Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [m2e-users] Reducing build times of web application

On 08/05/2011 01:58 AM, Jan Ploski wrote:

> AFAICS M2Eclipse doesn't automatically and
> incrementally update the contents of target/WEB-INF in that case, so I
> have to run the Maven build on the parent project myself (I created a
> Run Configuration for that).

WRT to developing web applications: M2E has nothing to do
webapps-specific on its own. You have to look at Sonatype's Webby [1] or
M2E WTP integration [2].

[1]
https://docs.sonatype.org/display/M2ECLIPSE/Integration+with+Maven+WAR+Plugin
[2]
http://community.jboss.org/en/tools/blog/2011/06/23/m2eclipse-wtp-0130-new-noteworthy

> Anders Hammar wrote:
>> So you're doing a Maven build? If so it will take some time (the same
>> amount of time as from command line). The idea (my take on this at
>> least) when using the IDE is not to have to do a (full) Maven build all
>> the time, but rather utilize the fact that Eclipse will compile in
>> runtime. Eclipse will notify you of compilation errors (as it will when
>> not using m2eclipse and a Maven project). You want to verify someting in
>> the code? Simple, just execute that specific unit test from within
>> Eclipse (Run as Junit test).
>>
>> You do a (full) Maven build when you certain things work and you just
>> want to verify by building the entire project.
>>
>> This is at least how I try do develop my code,
>> /Anders
>>
>> On Thu, Aug 4, 2011 at 22:28, Jan Ploski <jpl@xxxxxxxxxxxxx
>> <mailto:jpl@xxxxxxxxxxxxx>> wrote:
>>
>>     Sorry, I forgot to mention: I'm using 1.0.0.20110607-2117, so that
>>     shouldn't be an issue.
>>
>>      From the console output I see the time is spread among modules
>>     (module names changed to protect the innocent):
>>
>>     [INFO] Reactor Summary:
>>     [INFO]
>>     [INFO] Parent project ..................... SUCCESS [0.521s]
>>     [INFO] Util ..............................__. SUCCESS [3.082s]
>>     [INFO] Security ........................... SUCCESS [1.156s]
>>     [INFO] Business interfaces ................ SUCCESS [1.272s]
>>     [INFO] Security implementation ............ SUCCESS [0.790s]
>>     [INFO] Business services implementation ... SUCCESS [1.418s]
>>     [INFO] WAR ..............................__.. SUCCESS [7.738s]
>>     [INFO] EAR ..............................__.. SUCCESS [5.742s]
>>
>>     So I suppose my question may be more of a "best practices" / "is
>>     that normal" nature: given such a project structure, and my act of
>>     changing of a single source file, should I "suck it up", or am I
>>     justified in thinking that some optimizations in the development
>>     process are needed. I have been using scripting languages much
>>     recently, so delays of this kind do cause annoyance. But they might
>>     be just a fact of life given the different technology?...
>>
>>     Regards,
>>     Jan Ploski
>>
>>     Anders Hammar wrote:
>>
>>         What version of m2e are you using? v1.0 is a great improvement
>>         compared
>>         to the older 0.x versions (where the behavior you're describing
>>         could
>>         happen).
>>
>>         /Anders
>>
>>         On Thu, Aug 4, 2011 at 18:21, Jan Ploski <jpl@xxxxxxxxxxxxx
>>         <mailto:jpl@xxxxxxxxxxxxx>
>>         <mailto:jpl@xxxxxxxxxxxxx <mailto:jpl@xxxxxxxxxxxxx>>> wrote:
>>
>>             Hi,
>>
>>             As a new user of M2Eclipse, I am wondering about typical and
>>         minimal
>>             build times. What I have here is a multi-module project
>>         structured
>>             according to the usual recommendations (much like the
>>         multi-module
>>             enterprise example in the Maven by Example book). Building
>>         it (from
>>             non-dirty state) using M2Eclipse (or directly with Maven)
>> takes
>>             about 30 seconds. So after any slightest change in code I
>>         have to
>>             wait for at least 30 seconds before seeing the effect of my
>>         change
>>             in the browser. Given that Eclipse compiles the individual
>>         classes
>>             instantly as I type, the build step seems like a great waste
>>         and an
>>             unnecessary overhead.
>>
>>             What are your impressions? Does working with Maven
>> necessarily
>>             induce such delays into the edit-compile-run cycle and
>>         should one
>>             treat this overhead as a price for having a portable build
>>         system
>>             ("just buy faster hardware")? Or are there any
>>         tried-and-true tricks
>>             for speeding up the process? Right now I'm thinking about
>>         hacking
>>             together something project-specific that detects changes in
>>         .class
>>             files and then updates the corresponding resources in
>>         WEB-INF. But
>>             that's very crude and essentially means working around
>> Maven (in
>>             development) instead of relying on it equally everywhere.
>>

-- 
Mykola


Back to the top