Re: Help with converting existing ant build to maven is required - forking
On 30 April 2014 11:54, Maxim Solodovnik wrote: > Here is the structure: > > "Openmeetings Util" project has compile time dependency "Red5 server" > Almost all other projects are dependent on "Openmeetings Util" and "Red5 > server" (compile time) > > But When I'm creating war file in "Openmeetings Web" project I need to > remove "Red5 server" and all it dependencies from the WEB-INF/lib folder > since all these jar files will be placed into tomcat/lib folder. I highly recommend having a look at the freely available books at http://maven.apache.org/articles.html You might not need that knowledge right now, but you will eventually, and it may also trigger off more thoughts about what else you would like to achieve with the conversion.
Re: Help with converting existing ant build to maven is required - forking
So, as far as Maven is concerned, Red5 is scope "provided". You want it to reference it for compiling but should not put its classes in the jar or war since you are going to sneak it into the package without Maven noticing. Pretty standard problem. We make a lot of aggregation jars that are used in the same way. http://blog.artifact-software.com/tech/?p=121 describes how we handle a similar need to produce skinny wars that use libraries in Tomcar/shared or tomcat/lib to avoid copies of the same code in multiple jars. Our LMS project has over 80 Maven projects that produce a variety of jars and wars. Many of these share the use of large libraries such as CXF, Spring and Apache commons that can be shared through Tomcat's classloader rather than duplicated in each war. There are some other notes about Maven on our blog that you might find interesting. I would prefer an installer to get the shared libraries into tomcat/lib but that is another issue. Ron On 29/04/2014 10:24 PM, Maxim Solodovnik wrote: Here is the structure: "Openmeetings Util" project has compile time dependency "Red5 server" Almost all other projects are dependent on "Openmeetings Util" and "Red5 server" (compile time) But When I'm creating war file in "Openmeetings Web" project I need to remove "Red5 server" and all it dependencies from the WEB-INF/lib folder since all these jar files will be placed into tomcat/lib folder. On Wed, Apr 30, 2014 at 4:43 AM, Ron Wheeler wrote: Where will the transitive dependencies come from? There may be ways to do what you want. Ron On 29/04/2014 1:44 PM, Maxim Solodovnik wrote: Additional question: Is it possible to exclude compile time dependency (with all transitive sub-dependencies) form war libraries? (without listing libraries one by one) On Tue, Apr 29, 2014 at 9:44 PM, Maxim Solodovnik wrote: Hello Ron, I'll take a look at izPack as an alternative to assembly plugin (which seems to be able to create artifact similar to the current being created by ant) Currently I'm trying to build all jars/war/swf files need to be packed (by assembly plugin or izPack) Here is the stripped output of my current maven build: http://pastebin.com/XvbA9yGM As you can see, after normal build all projects are being forked: 1. [INFO] 2. [INFO] Forking Openmeetings Util 3.1.0-SNAPSHOT 3. [INFO] 4. etc. if I'm building single project using: mvn clean install -pl openmeetings-web -am I see no forking Will appreciate any help on this On Tue, Apr 29, 2014 at 9:25 PM, Ron Wheeler < rwhee...@artifact-software.com> wrote: Can you describe the "forking" Maven problem in more detail. What does it do that you don't want and what does it not do that you need. Is there anything about your build that is different from the thousands of projects that use Maven to build Tomcat applications? Have you looked at using Maven to build an installer with izPack. This will let you use Maven to build the components and use the maven izPack plug-in to build a user-friendly deployment tool that lets a system admin install all of your components in the "right" places with the required permissions, initialization, etc. that may be required. Ron On 29/04/2014 10:13 AM, Maxim Solodovnik wrote: Thanks Russ! I was hoping there is a way to avoid specifying parent version in every sub-project. But it seems to be "Maven way" :) Maybe you know how to manage project forking? My projects are being build several times and the result of building parent project is unpredictable for whatever reason :( On Tue, Apr 29, 2014 at 9:04 PM, Russell Gold wrote: HI Maxim, Here is how I do child projects: com.meterware.totalizer totalizer 1.0-SNAPSHOT .. server Note that I am specifying the parent project, but neither the group nor the version for the child project - just the artifactId. The others are automatically inherited. Regards, Russ On Apr 26, 2014, at 3:38 AM, Maxim Solodovnik wrote: Hello All, sorry for the keeping silence too long :) finally I was able to start migration and more questions are come up: :) 1) Is there any way to use parent project version in child projects? I currently use variable for this [1] but it results too many warnings 2) I have lots of "Forking PROJECT VERSION" and same tasks are performed again and again :( is there any way to disable forking? 3) somehow task in phase "process-test-resources" is executed even if "-DskipTests=true" is specified: mvn eclipse:eclipse -DskipTests=true Or in case of eclipse:eclipse it is expected behavior? 4) While running "mvn site" I get lots of Caused by: java.lang.ClassNotFoundException: org.sonatype.aether.version.VersionConstraint at org.codehaus.plexus.classworlds.strategy. SelfFirstStrategy.loadClass(
Re: Help with converting existing ant build to maven is required - forking
Here is the structure: "Openmeetings Util" project has compile time dependency "Red5 server" Almost all other projects are dependent on "Openmeetings Util" and "Red5 server" (compile time) But When I'm creating war file in "Openmeetings Web" project I need to remove "Red5 server" and all it dependencies from the WEB-INF/lib folder since all these jar files will be placed into tomcat/lib folder. On Wed, Apr 30, 2014 at 4:43 AM, Ron Wheeler wrote: > Where will the transitive dependencies come from? > There may be ways to do what you want. > > Ron > > On 29/04/2014 1:44 PM, Maxim Solodovnik wrote: > >> Additional question: >> >> Is it possible to exclude compile time dependency (with all transitive >> sub-dependencies) >> form war libraries? (without listing libraries one by one) >> >> >> >> On Tue, Apr 29, 2014 at 9:44 PM, Maxim Solodovnik > >wrote: >> >> Hello Ron, >>> >>> I'll take a look at izPack as an alternative to assembly plugin (which >>> seems to be able to create artifact similar to the current being created >>> by >>> ant) >>> >>> Currently I'm trying to build all jars/war/swf files need to be packed >>> (by >>> assembly plugin or izPack) >>> >>> Here is the stripped output of my current maven build: >>> http://pastebin.com/XvbA9yGM >>> As you can see, after normal build all projects are being forked: >>> >>> 1. [INFO] >>> >>> >>> 2. [INFO] Forking Openmeetings Util 3.1.0-SNAPSHOT >>> 3. [INFO] >>> >>> >>> 4. >>> >>> >>> etc. >>> >>> if I'm building single project using: >>> mvn clean install -pl openmeetings-web -am >>> I see no forking >>> >>> Will appreciate any help on this >>> >>> >>> On Tue, Apr 29, 2014 at 9:25 PM, Ron Wheeler < >>> rwhee...@artifact-software.com> wrote: >>> >>> Can you describe the "forking" Maven problem in more detail. What does it do that you don't want and what does it not do that you need. Is there anything about your build that is different from the thousands of projects that use Maven to build Tomcat applications? Have you looked at using Maven to build an installer with izPack. This will let you use Maven to build the components and use the maven izPack plug-in to build a user-friendly deployment tool that lets a system admin install all of your components in the "right" places with the required permissions, initialization, etc. that may be required. Ron On 29/04/2014 10:13 AM, Maxim Solodovnik wrote: Thanks Russ! > > I was hoping there is a way to avoid specifying parent version in every > sub-project. > But it seems to be "Maven way" :) > > Maybe you know how to manage project forking? My projects are being > build > several times and the result of building parent project is > unpredictable > for whatever reason :( > > > On Tue, Apr 29, 2014 at 9:04 PM, Russell Gold > wrote: > > HI Maxim, > >> Here is how I do child projects: >> >> >> com.meterware.totalizer >> totalizer >> 1.0-SNAPSHOT >> .. >> >> >> server >> >> >> Note that I am specifying the parent project, but neither the group >> nor >> the version for the child project - just the artifactId. The others >> are >> automatically inherited. >> >> Regards, >> Russ >> >> On Apr 26, 2014, at 3:38 AM, Maxim Solodovnik >> wrote: >> >> Hello All, >> >>> sorry for the keeping silence too long :) >>> finally I was able to start migration and more questions are come up: >>> :) >>> >>> 1) Is there any way to use parent project version in child projects? >>> I >>> currently use variable for this [1] but it results too many warnings >>> >>> 2) I have lots of "Forking PROJECT VERSION" and same tasks are >>> performed >>> again and again :( is there any way to disable forking? >>> >>> 3) somehow task in phase "process-test-resources" is executed even if >>> "-DskipTests=true" is specified: >>> mvn eclipse:eclipse -DskipTests=true >>> Or in case of eclipse:eclipse it is expected behavior? >>> >>> 4) While running "mvn site" I get lots of >>> Caused by: java.lang.ClassNotFoundException: >>> org.sonatype.aether.version.VersionConstraint >>> at >>> >>> org.codehaus.plexus.classworlds.strategy. >>> SelfFirstStrategy.loadClass( >>> >> SelfFirstStrategy.java:50) >> >> I have tried many solutions from the google none of them are working >>> :( >>> >>> >>> solomax@solomax-laptop:~/work/openmeetings/trunk/singlewebapp$ mvn >>> >>> -version >> >> Apache Maven 3.2.1 (ea8b2b07643dbb1b84b6d
Re: Help with converting existing ant build to maven is required - forking
Where will the transitive dependencies come from? There may be ways to do what you want. Ron On 29/04/2014 1:44 PM, Maxim Solodovnik wrote: Additional question: Is it possible to exclude compile time dependency (with all transitive sub-dependencies) form war libraries? (without listing libraries one by one) On Tue, Apr 29, 2014 at 9:44 PM, Maxim Solodovnik wrote: Hello Ron, I'll take a look at izPack as an alternative to assembly plugin (which seems to be able to create artifact similar to the current being created by ant) Currently I'm trying to build all jars/war/swf files need to be packed (by assembly plugin or izPack) Here is the stripped output of my current maven build: http://pastebin.com/XvbA9yGM As you can see, after normal build all projects are being forked: 1. [INFO] 2. [INFO] Forking Openmeetings Util 3.1.0-SNAPSHOT 3. [INFO] 4. etc. if I'm building single project using: mvn clean install -pl openmeetings-web -am I see no forking Will appreciate any help on this On Tue, Apr 29, 2014 at 9:25 PM, Ron Wheeler < rwhee...@artifact-software.com> wrote: Can you describe the "forking" Maven problem in more detail. What does it do that you don't want and what does it not do that you need. Is there anything about your build that is different from the thousands of projects that use Maven to build Tomcat applications? Have you looked at using Maven to build an installer with izPack. This will let you use Maven to build the components and use the maven izPack plug-in to build a user-friendly deployment tool that lets a system admin install all of your components in the "right" places with the required permissions, initialization, etc. that may be required. Ron On 29/04/2014 10:13 AM, Maxim Solodovnik wrote: Thanks Russ! I was hoping there is a way to avoid specifying parent version in every sub-project. But it seems to be "Maven way" :) Maybe you know how to manage project forking? My projects are being build several times and the result of building parent project is unpredictable for whatever reason :( On Tue, Apr 29, 2014 at 9:04 PM, Russell Gold wrote: HI Maxim, Here is how I do child projects: com.meterware.totalizer totalizer 1.0-SNAPSHOT .. server Note that I am specifying the parent project, but neither the group nor the version for the child project - just the artifactId. The others are automatically inherited. Regards, Russ On Apr 26, 2014, at 3:38 AM, Maxim Solodovnik wrote: Hello All, sorry for the keeping silence too long :) finally I was able to start migration and more questions are come up: :) 1) Is there any way to use parent project version in child projects? I currently use variable for this [1] but it results too many warnings 2) I have lots of "Forking PROJECT VERSION" and same tasks are performed again and again :( is there any way to disable forking? 3) somehow task in phase "process-test-resources" is executed even if "-DskipTests=true" is specified: mvn eclipse:eclipse -DskipTests=true Or in case of eclipse:eclipse it is expected behavior? 4) While running "mvn site" I get lots of Caused by: java.lang.ClassNotFoundException: org.sonatype.aether.version.VersionConstraint at org.codehaus.plexus.classworlds.strategy.SelfFirstStrategy.loadClass( SelfFirstStrategy.java:50) I have tried many solutions from the google none of them are working :( solomax@solomax-laptop:~/work/openmeetings/trunk/singlewebapp$ mvn -version Apache Maven 3.2.1 (ea8b2b07643dbb1b84b6d16e1f08391b666bc1e9; 2014-02-15T00:37:52+07:00) Maven home: /opt/maven Java version: 1.7.0_51, vendor: Oracle Corporation Java home: /opt/jdk1.7.0_51/jre Default locale: en_US, platform encoding: UTF-8 OS name: "linux", version: "3.13.0-24-generic", arch: "amd64", family: "unix" Thanks in advance :) On Thu, Mar 13, 2014 at 10:46 PM, Ron Wheeler < rwhee...@artifact-software.com> wrote: Good approach. Ron On 13/03/2014 9:58 AM, Baptiste Mathus wrote: Well, though I agree Maven isn't designed to be an end-user tool, using it to build the end-user distribution is actually totally supported. IMO, if what you're trying to do is building your product from some sources and binaries, then Maven can obviously do it. If what you need for production is an installer, then creating an installer using izpack is indeed a good idea, but you would just build that installer during your Maven build (http://izpack.codehaus.org/ izpack-maven-plugin/e.g.). You seem to actually have two kind of phases: * the first one, typically compile and package your sources using binaries coming from a repo manager (be it a corporately managed one, or directly from Central) * the second one, creating the end-user distribution, is typically done with Maven usin
Re: Help with converting existing ant build to maven is required - forking
Additional question: Is it possible to exclude compile time dependency (with all transitive sub-dependencies) form war libraries? (without listing libraries one by one) On Tue, Apr 29, 2014 at 9:44 PM, Maxim Solodovnik wrote: > Hello Ron, > > I'll take a look at izPack as an alternative to assembly plugin (which > seems to be able to create artifact similar to the current being created by > ant) > > Currently I'm trying to build all jars/war/swf files need to be packed (by > assembly plugin or izPack) > > Here is the stripped output of my current maven build: > http://pastebin.com/XvbA9yGM > As you can see, after normal build all projects are being forked: > >1. [INFO] > >2. [INFO] Forking Openmeetings Util 3.1.0-SNAPSHOT >3. [INFO] > >4. > > etc. > > if I'm building single project using: > mvn clean install -pl openmeetings-web -am > I see no forking > > Will appreciate any help on this > > > On Tue, Apr 29, 2014 at 9:25 PM, Ron Wheeler < > rwhee...@artifact-software.com> wrote: > >> Can you describe the "forking" Maven problem in more detail. >> What does it do that you don't want and what does it not do that you need. >> >> Is there anything about your build that is different from the thousands >> of projects that use Maven to build Tomcat applications? >> >> Have you looked at using Maven to build an installer with izPack. >> This will let you use Maven to build the components and use the maven >> izPack plug-in to build a user-friendly deployment tool that lets a system >> admin install all of your components in the "right" places with the >> required permissions, initialization, etc. that may be required. >> >> Ron >> >> On 29/04/2014 10:13 AM, Maxim Solodovnik wrote: >> >>> Thanks Russ! >>> >>> I was hoping there is a way to avoid specifying parent version in every >>> sub-project. >>> But it seems to be "Maven way" :) >>> >>> Maybe you know how to manage project forking? My projects are being build >>> several times and the result of building parent project is unpredictable >>> for whatever reason :( >>> >>> >>> On Tue, Apr 29, 2014 at 9:04 PM, Russell Gold >>> wrote: >>> >>> HI Maxim, Here is how I do child projects: com.meterware.totalizer totalizer 1.0-SNAPSHOT .. server Note that I am specifying the parent project, but neither the group nor the version for the child project - just the artifactId. The others are automatically inherited. Regards, Russ On Apr 26, 2014, at 3:38 AM, Maxim Solodovnik wrote: Hello All, > > sorry for the keeping silence too long :) > finally I was able to start migration and more questions are come up: > :) > > 1) Is there any way to use parent project version in child projects? I > currently use variable for this [1] but it results too many warnings > > 2) I have lots of "Forking PROJECT VERSION" and same tasks are > performed > again and again :( is there any way to disable forking? > > 3) somehow task in phase "process-test-resources" is executed even if > "-DskipTests=true" is specified: > mvn eclipse:eclipse -DskipTests=true > Or in case of eclipse:eclipse it is expected behavior? > > 4) While running "mvn site" I get lots of > Caused by: java.lang.ClassNotFoundException: > org.sonatype.aether.version.VersionConstraint > at > > org.codehaus.plexus.classworlds.strategy.SelfFirstStrategy.loadClass( SelfFirstStrategy.java:50) > I have tried many solutions from the google none of them are working :( > > > solomax@solomax-laptop:~/work/openmeetings/trunk/singlewebapp$ mvn > -version > Apache Maven 3.2.1 (ea8b2b07643dbb1b84b6d16e1f08391b666bc1e9; > 2014-02-15T00:37:52+07:00) > Maven home: /opt/maven > Java version: 1.7.0_51, vendor: Oracle Corporation > Java home: /opt/jdk1.7.0_51/jre > Default locale: en_US, platform encoding: UTF-8 > OS name: "linux", version: "3.13.0-24-generic", arch: "amd64", family: > "unix" > > > Thanks in advance :) > > > > On Thu, Mar 13, 2014 at 10:46 PM, Ron Wheeler < > rwhee...@artifact-software.com> wrote: > > Good approach. >> Ron >> >> On 13/03/2014 9:58 AM, Baptiste Mathus wrote: >> >> Well, though I agree Maven isn't designed to be an end-user tool, >>> >> using it > to build the end-user distribution is actually totally supported. >>> IMO, if what you're trying to do is building your product from some >>> sources >>> and binaries, then Maven can obviously do it. >>> >>> If what you need for production is an installer, then creating a
Re: Help with converting existing ant build to maven is required - forking
Hello Ron, I'll take a look at izPack as an alternative to assembly plugin (which seems to be able to create artifact similar to the current being created by ant) Currently I'm trying to build all jars/war/swf files need to be packed (by assembly plugin or izPack) Here is the stripped output of my current maven build: http://pastebin.com/XvbA9yGM As you can see, after normal build all projects are being forked: 1. [INFO] 2. [INFO] Forking Openmeetings Util 3.1.0-SNAPSHOT 3. [INFO] 4. etc. if I'm building single project using: mvn clean install -pl openmeetings-web -am I see no forking Will appreciate any help on this On Tue, Apr 29, 2014 at 9:25 PM, Ron Wheeler wrote: > Can you describe the "forking" Maven problem in more detail. > What does it do that you don't want and what does it not do that you need. > > Is there anything about your build that is different from the thousands of > projects that use Maven to build Tomcat applications? > > Have you looked at using Maven to build an installer with izPack. > This will let you use Maven to build the components and use the maven > izPack plug-in to build a user-friendly deployment tool that lets a system > admin install all of your components in the "right" places with the > required permissions, initialization, etc. that may be required. > > Ron > > On 29/04/2014 10:13 AM, Maxim Solodovnik wrote: > >> Thanks Russ! >> >> I was hoping there is a way to avoid specifying parent version in every >> sub-project. >> But it seems to be "Maven way" :) >> >> Maybe you know how to manage project forking? My projects are being build >> several times and the result of building parent project is unpredictable >> for whatever reason :( >> >> >> On Tue, Apr 29, 2014 at 9:04 PM, Russell Gold >> wrote: >> >> HI Maxim, >>> >>> Here is how I do child projects: >>> >>> >>> com.meterware.totalizer >>> totalizer >>> 1.0-SNAPSHOT >>> .. >>> >>> >>> server >>> >>> >>> Note that I am specifying the parent project, but neither the group nor >>> the version for the child project - just the artifactId. The others are >>> automatically inherited. >>> >>> Regards, >>> Russ >>> >>> On Apr 26, 2014, at 3:38 AM, Maxim Solodovnik >>> wrote: >>> >>> Hello All, sorry for the keeping silence too long :) finally I was able to start migration and more questions are come up: :) 1) Is there any way to use parent project version in child projects? I currently use variable for this [1] but it results too many warnings 2) I have lots of "Forking PROJECT VERSION" and same tasks are performed again and again :( is there any way to disable forking? 3) somehow task in phase "process-test-resources" is executed even if "-DskipTests=true" is specified: mvn eclipse:eclipse -DskipTests=true Or in case of eclipse:eclipse it is expected behavior? 4) While running "mvn site" I get lots of Caused by: java.lang.ClassNotFoundException: org.sonatype.aether.version.VersionConstraint at org.codehaus.plexus.classworlds.strategy.SelfFirstStrategy.loadClass( >>> SelfFirstStrategy.java:50) >>> I have tried many solutions from the google none of them are working :( solomax@solomax-laptop:~/work/openmeetings/trunk/singlewebapp$ mvn >>> -version >>> Apache Maven 3.2.1 (ea8b2b07643dbb1b84b6d16e1f08391b666bc1e9; 2014-02-15T00:37:52+07:00) Maven home: /opt/maven Java version: 1.7.0_51, vendor: Oracle Corporation Java home: /opt/jdk1.7.0_51/jre Default locale: en_US, platform encoding: UTF-8 OS name: "linux", version: "3.13.0-24-generic", arch: "amd64", family: "unix" Thanks in advance :) On Thu, Mar 13, 2014 at 10:46 PM, Ron Wheeler < rwhee...@artifact-software.com> wrote: Good approach. > Ron > > On 13/03/2014 9:58 AM, Baptiste Mathus wrote: > > Well, though I agree Maven isn't designed to be an end-user tool, >> > using it >>> to build the end-user distribution is actually totally supported. >> IMO, if what you're trying to do is building your product from some >> sources >> and binaries, then Maven can obviously do it. >> >> If what you need for production is an installer, then creating an >> installer >> using izpack is indeed a good idea, but you would just build that >> installer >> during your Maven build (http://izpack.codehaus.org/ >> izpack-maven-plugin/e.g.). >> >> You seem to actually have two kind of phases: >> * the first one, typically compile and package your sources using >> > binaries >>> coming from a repo manager (be it a corporately managed one, or >> > dir
Re: Help with converting existing ant build to maven is required - forking
Can you describe the "forking" Maven problem in more detail. What does it do that you don't want and what does it not do that you need. Is there anything about your build that is different from the thousands of projects that use Maven to build Tomcat applications? Have you looked at using Maven to build an installer with izPack. This will let you use Maven to build the components and use the maven izPack plug-in to build a user-friendly deployment tool that lets a system admin install all of your components in the "right" places with the required permissions, initialization, etc. that may be required. Ron On 29/04/2014 10:13 AM, Maxim Solodovnik wrote: Thanks Russ! I was hoping there is a way to avoid specifying parent version in every sub-project. But it seems to be "Maven way" :) Maybe you know how to manage project forking? My projects are being build several times and the result of building parent project is unpredictable for whatever reason :( On Tue, Apr 29, 2014 at 9:04 PM, Russell Gold wrote: HI Maxim, Here is how I do child projects: com.meterware.totalizer totalizer 1.0-SNAPSHOT .. server Note that I am specifying the parent project, but neither the group nor the version for the child project - just the artifactId. The others are automatically inherited. Regards, Russ On Apr 26, 2014, at 3:38 AM, Maxim Solodovnik wrote: Hello All, sorry for the keeping silence too long :) finally I was able to start migration and more questions are come up: :) 1) Is there any way to use parent project version in child projects? I currently use variable for this [1] but it results too many warnings 2) I have lots of "Forking PROJECT VERSION" and same tasks are performed again and again :( is there any way to disable forking? 3) somehow task in phase "process-test-resources" is executed even if "-DskipTests=true" is specified: mvn eclipse:eclipse -DskipTests=true Or in case of eclipse:eclipse it is expected behavior? 4) While running "mvn site" I get lots of Caused by: java.lang.ClassNotFoundException: org.sonatype.aether.version.VersionConstraint at org.codehaus.plexus.classworlds.strategy.SelfFirstStrategy.loadClass(SelfFirstStrategy.java:50) I have tried many solutions from the google none of them are working :( solomax@solomax-laptop:~/work/openmeetings/trunk/singlewebapp$ mvn -version Apache Maven 3.2.1 (ea8b2b07643dbb1b84b6d16e1f08391b666bc1e9; 2014-02-15T00:37:52+07:00) Maven home: /opt/maven Java version: 1.7.0_51, vendor: Oracle Corporation Java home: /opt/jdk1.7.0_51/jre Default locale: en_US, platform encoding: UTF-8 OS name: "linux", version: "3.13.0-24-generic", arch: "amd64", family: "unix" Thanks in advance :) On Thu, Mar 13, 2014 at 10:46 PM, Ron Wheeler < rwhee...@artifact-software.com> wrote: Good approach. Ron On 13/03/2014 9:58 AM, Baptiste Mathus wrote: Well, though I agree Maven isn't designed to be an end-user tool, using it to build the end-user distribution is actually totally supported. IMO, if what you're trying to do is building your product from some sources and binaries, then Maven can obviously do it. If what you need for production is an installer, then creating an installer using izpack is indeed a good idea, but you would just build that installer during your Maven build (http://izpack.codehaus.org/ izpack-maven-plugin/e.g.). You seem to actually have two kind of phases: * the first one, typically compile and package your sources using binaries coming from a repo manager (be it a corporately managed one, or directly from Central) * the second one, creating the end-user distribution, is typically done with Maven using maven-assembly-plugin. Don't hesitate to ask questions, because I don't think we've gone so far until now to understand your building steps. Cheers 2014-03-13 14:24 GMT+01:00 Maxim Solodovnik : Thanks Ron, I'll take a look at it, but I'm afraid distribute application in "partially compiled state" is not an option. Currently it works out of the box and this is the requirement. Will try to study maven and postpone the migration for now On Thu, Mar 13, 2014 at 8:18 PM, Ron Wheeler < rwhee...@artifact-software.com wrote: IMHO, Maven is a software build tool and trying to make it a installation tool is much too hard. You might find that your life will be a lot easier with IzPack as the tool to create your installer. It will allow you to package up your maven artifacts with other resources into different OS-specific installers that can be distributed easily. It supports install time execution of your procedures so that you can start RED-5 or execute the flex processes required to build and install the Flash assets. Ron On 13/03/2014 4:51 AM, Maxim Solodovnik wrote: Hello Baptiste, Thanks for your quick reply! Red5-server is "custom tomcat" (zip/tgz with scripts, libraries, configs etc.). We need to pack it in our distribution, not sure
Re: Help with converting existing ant build to maven is required
Thanks Russ! I was hoping there is a way to avoid specifying parent version in every sub-project. But it seems to be "Maven way" :) Maybe you know how to manage project forking? My projects are being build several times and the result of building parent project is unpredictable for whatever reason :( On Tue, Apr 29, 2014 at 9:04 PM, Russell Gold wrote: > HI Maxim, > > Here is how I do child projects: > > > com.meterware.totalizer > totalizer > 1.0-SNAPSHOT > .. > > > server > > > Note that I am specifying the parent project, but neither the group nor > the version for the child project - just the artifactId. The others are > automatically inherited. > > Regards, > Russ > > On Apr 26, 2014, at 3:38 AM, Maxim Solodovnik > wrote: > > > Hello All, > > > > sorry for the keeping silence too long :) > > finally I was able to start migration and more questions are come up: :) > > > > 1) Is there any way to use parent project version in child projects? I > > currently use variable for this [1] but it results too many warnings > > > > 2) I have lots of "Forking PROJECT VERSION" and same tasks are performed > > again and again :( is there any way to disable forking? > > > > 3) somehow task in phase "process-test-resources" is executed even if > > "-DskipTests=true" is specified: > > mvn eclipse:eclipse -DskipTests=true > > Or in case of eclipse:eclipse it is expected behavior? > > > > 4) While running "mvn site" I get lots of > > Caused by: java.lang.ClassNotFoundException: > > org.sonatype.aether.version.VersionConstraint > > at > > > org.codehaus.plexus.classworlds.strategy.SelfFirstStrategy.loadClass(SelfFirstStrategy.java:50) > > I have tried many solutions from the google none of them are working :( > > > > > > solomax@solomax-laptop:~/work/openmeetings/trunk/singlewebapp$ mvn > -version > > Apache Maven 3.2.1 (ea8b2b07643dbb1b84b6d16e1f08391b666bc1e9; > > 2014-02-15T00:37:52+07:00) > > Maven home: /opt/maven > > Java version: 1.7.0_51, vendor: Oracle Corporation > > Java home: /opt/jdk1.7.0_51/jre > > Default locale: en_US, platform encoding: UTF-8 > > OS name: "linux", version: "3.13.0-24-generic", arch: "amd64", family: > > "unix" > > > > > > Thanks in advance :) > > > > > > > > On Thu, Mar 13, 2014 at 10:46 PM, Ron Wheeler < > > rwhee...@artifact-software.com> wrote: > > > >> Good approach. > >> Ron > >> > >> On 13/03/2014 9:58 AM, Baptiste Mathus wrote: > >> > >>> Well, though I agree Maven isn't designed to be an end-user tool, > using it > >>> to build the end-user distribution is actually totally supported. > >>> IMO, if what you're trying to do is building your product from some > >>> sources > >>> and binaries, then Maven can obviously do it. > >>> > >>> If what you need for production is an installer, then creating an > >>> installer > >>> using izpack is indeed a good idea, but you would just build that > >>> installer > >>> during your Maven build (http://izpack.codehaus.org/ > >>> izpack-maven-plugin/e.g.). > >>> > >>> You seem to actually have two kind of phases: > >>> * the first one, typically compile and package your sources using > binaries > >>> coming from a repo manager (be it a corporately managed one, or > directly > >>> from Central) > >>> * the second one, creating the end-user distribution, is typically done > >>> with Maven using maven-assembly-plugin. > >>> > >>> Don't hesitate to ask questions, because I don't think we've gone so > far > >>> until now to understand your building steps. > >>> > >>> Cheers > >>> > >>> > >>> 2014-03-13 14:24 GMT+01:00 Maxim Solodovnik : > >>> > >>> Thanks Ron, > > I'll take a look at it, but I'm afraid distribute application in > "partially > compiled state" is not an option. > Currently it works out of the box and this is the requirement. > > Will try to study maven and postpone the migration for now > > > On Thu, Mar 13, 2014 at 8:18 PM, Ron Wheeler < > rwhee...@artifact-software.com > > > wrote: > > IMHO, Maven is a software build tool and trying to make it a > > installation > > tool is much too hard. > > > > You might find that your life will be a lot easier with IzPack as the > > > tool > > > to create your installer. > > It will allow you to package up your maven artifacts with other > > resources > > into different OS-specific installers that can be distributed easily. > > It supports install time execution of your procedures so that you can > > start RED-5 or execute the flex processes required to build and > install > > > the > > > Flash assets. > > > > > > Ron > > > > > > > > On 13/03/2014 4:51 AM, Maxim Solodovnik wrote: > > > > Hello Baptiste, > >> > >> Thanks for your quick reply! > >> > >> Red5-server is "custom tomcat" (zip/tgz with scripts, libraries, > >> configs > >> etc.). > >> We
Re: Help with converting existing ant build to maven is required
HI Maxim, Here is how I do child projects: com.meterware.totalizer totalizer 1.0-SNAPSHOT .. server Note that I am specifying the parent project, but neither the group nor the version for the child project - just the artifactId. The others are automatically inherited. Regards, Russ On Apr 26, 2014, at 3:38 AM, Maxim Solodovnik wrote: > Hello All, > > sorry for the keeping silence too long :) > finally I was able to start migration and more questions are come up: :) > > 1) Is there any way to use parent project version in child projects? I > currently use variable for this [1] but it results too many warnings > > 2) I have lots of "Forking PROJECT VERSION" and same tasks are performed > again and again :( is there any way to disable forking? > > 3) somehow task in phase "process-test-resources" is executed even if > "-DskipTests=true" is specified: > mvn eclipse:eclipse -DskipTests=true > Or in case of eclipse:eclipse it is expected behavior? > > 4) While running "mvn site" I get lots of > Caused by: java.lang.ClassNotFoundException: > org.sonatype.aether.version.VersionConstraint > at > org.codehaus.plexus.classworlds.strategy.SelfFirstStrategy.loadClass(SelfFirstStrategy.java:50) > I have tried many solutions from the google none of them are working :( > > > solomax@solomax-laptop:~/work/openmeetings/trunk/singlewebapp$ mvn -version > Apache Maven 3.2.1 (ea8b2b07643dbb1b84b6d16e1f08391b666bc1e9; > 2014-02-15T00:37:52+07:00) > Maven home: /opt/maven > Java version: 1.7.0_51, vendor: Oracle Corporation > Java home: /opt/jdk1.7.0_51/jre > Default locale: en_US, platform encoding: UTF-8 > OS name: "linux", version: "3.13.0-24-generic", arch: "amd64", family: > "unix" > > > Thanks in advance :) > > > > On Thu, Mar 13, 2014 at 10:46 PM, Ron Wheeler < > rwhee...@artifact-software.com> wrote: > >> Good approach. >> Ron >> >> On 13/03/2014 9:58 AM, Baptiste Mathus wrote: >> >>> Well, though I agree Maven isn't designed to be an end-user tool, using it >>> to build the end-user distribution is actually totally supported. >>> IMO, if what you're trying to do is building your product from some >>> sources >>> and binaries, then Maven can obviously do it. >>> >>> If what you need for production is an installer, then creating an >>> installer >>> using izpack is indeed a good idea, but you would just build that >>> installer >>> during your Maven build (http://izpack.codehaus.org/ >>> izpack-maven-plugin/e.g.). >>> >>> You seem to actually have two kind of phases: >>> * the first one, typically compile and package your sources using binaries >>> coming from a repo manager (be it a corporately managed one, or directly >>> from Central) >>> * the second one, creating the end-user distribution, is typically done >>> with Maven using maven-assembly-plugin. >>> >>> Don't hesitate to ask questions, because I don't think we've gone so far >>> until now to understand your building steps. >>> >>> Cheers >>> >>> >>> 2014-03-13 14:24 GMT+01:00 Maxim Solodovnik : >>> >>> Thanks Ron, I'll take a look at it, but I'm afraid distribute application in "partially compiled state" is not an option. Currently it works out of the box and this is the requirement. Will try to study maven and postpone the migration for now On Thu, Mar 13, 2014 at 8:18 PM, Ron Wheeler < rwhee...@artifact-software.com > wrote: > IMHO, Maven is a software build tool and trying to make it a > installation > tool is much too hard. > > You might find that your life will be a lot easier with IzPack as the > tool > to create your installer. > It will allow you to package up your maven artifacts with other > resources > into different OS-specific installers that can be distributed easily. > It supports install time execution of your procedures so that you can > start RED-5 or execute the flex processes required to build and install > the > Flash assets. > > > Ron > > > > On 13/03/2014 4:51 AM, Maxim Solodovnik wrote: > > Hello Baptiste, >> >> Thanks for your quick reply! >> >> Red5-server is "custom tomcat" (zip/tgz with scripts, libraries, >> configs >> etc.). >> We need to pack it in our distribution, not sure if it can be done >> > "Maven > way" :( >> >> 2) tgz contains flex based Flash compiler with all necessary libraries >> > and > binaries necessary to build Flash part of our application. >> >> >> >> >> >> On Thu, Mar 13, 2014 at 5:15 AM, Baptiste Mathus >> wrote: >> >> IIUC, your project openmeetings depends on red5 libraries. >> >>> About your questions: >>> >>> 1) Not actually a Maven issue, but you seem to think the way to go it >>> >> to >>