Re: [Developers] maven mmbase-module question
On Mon, Oct 20, 2008 at 10:20, Ernst Bunders <[EMAIL PROTECTED]> wrote: > hello > > I am working an the maven build for the vpro-wizards, and i have a > question regarding the mmbase-module plugin. > What i am a bit unsure about is what to do with the jar dependencies > to the module? I guess not include them in the module archive? > How to handle this? Any ideas? I don't know either. To include them in the mmbase-module archive would at least be possible with some hackery. And I'm suppose it will work then. But indeed you 'd like to indicate somehow that a certain module has a certain (runtime dependency) I suppose you are thinking of spring. I myself just encounted a similar problem with xalan (the stupid jstl xml tags have a dependency on xalan, so if your componentns usess them, it has a runtime dependency on (*$&(@- xalan, and it should be installed on install of the mmbase-module). So, I just added some hackery in maven.xml of the richtext application: Yes. this is horrible. I'd also like to know if it could be done better. Michiel -- mihxil' http://meeuw.org nl_NL eo_XX en_US ___ Developers mailing list Developers@lists.mmbase.org http://lists.mmbase.org/mailman/listinfo/developers
Re: [Developers] maven: junit tests
On Mon, Aug 11, 2008 at 16:53, Ernst Bunders <[EMAIL PROTECTED]> wrote: > For my vpro-wizards application i like to write some tests that extend from > MmbaseTest.java. > Does this mean that the vpro-wizards have to be a module? Probably not. Them to supply a jar is probably enough, because mmbase-modules also contain jsps and things like that which are not tested by these junit test in 'tests'. > What would be the most simple way for me to run these tests? Possible would be to produce a maven-artifact, add it to install-dependency and add the tests to build.xml of tests. That would also be the preferred way if you want the tests to end up in the 'nightly' tests finally. > I must admit i find the whole build procedure very puzzling, and i don't > understand a great deal of it anymore. > I feel some documentation is probably in order. Also i wonder if the > ant-maven hybrid is really so very nice. It definitely seems to add to the > confusion. is this temporary? I did not find it usefull to try and translate a working ant-file of tests and also of didactor to a maven build. It was easier to device a generic ant include that would make it possible to use the maven artifacts in an ant build. Probably it would also have been possible to simply wrap the current ant-build into a maven build which at least arranges the dependencies in maven itself, but I was not sufficiently proficient in maven to get that done in a short time. Furthermore the extra advantage of this, is that you do not need maven now, to use this. For the test-cases this is a moot point, but I use the same install-dependency trick also for the build of didactor. To build didactor you now do not need maven, which is handy, because maven must normally be installed manually, and requires some instruction. I don't know if it is temporary. I was not planning to change this any time soon myself. Probably a full conversion is silly anyway because the implicit junit tasks of maven are supposed to be run directly after a build. Many of our 'junit' tests are more like 'integration' tests (and actually start up a running mmbase) which only happen to be implemented using junit. They can take several minutes to run, which would be unacceptable for every build iteration. So to somehow reproduce the current test scripts, I think you would end up with a lot of custom scripting any way, so there is little point in redoing that. At least I think that I can spend my time better... Michiel -- mihxil' http://meeuw.org nl_NL eo_XX en_US ___ Developers mailing list Developers@lists.mmbase.org http://lists.mmbase.org/mailman/listinfo/developers
Re: [Developers] maven
On Mon, Aug 11, 2008 at 16:29, Ernst Bunders <[EMAIL PROTECTED]> wrote: > hello > I am currently creating (or rather: trying to) a maven build for the > vpro-wizards. I understand that > an mmbase-module will have to be created if you want to install it into the > example-webapp. But i can not figure out how it is done. > > another thing is that the mmbase-module should be expanded a little bit, to > allow for tag files to be part of it. > What i would like is that tag files belonging to a module (residing in > tagfiels> should be installed as: > WEB-INF/tagfiles//... I'd suggest to include the tagfile in the jar, which would rid you of this problem. You check them in in a directory META-INF then. Sadly the URL of the taglib then changes. ,but it's nothing a global search/replace can't easily fix. That's the only thing have to add about the matter, I don't quite know how it works with installing mmbase-module's either. Michiel -- mihxil' http://meeuw.org nl_NL eo_XX en_US ___ Developers mailing list Developers@lists.mmbase.org http://lists.mmbase.org/mailman/listinfo/developers
Re: [Developers] Maven-site on mmbase.org
> The MMBase nightly build is moving towards being build by Maven in > stead of Ant (just one dependency error left I believe). All current > (and some of the deprecated) applications can now be found at the > MMBase Maven site http://www.mmbase.org/mm > Does this mean that the Packages pages are now deprecated and that I > should remove them from the websites menu's? Hi Andre, http://www.mmbase.org/mm/projects-overview.html is great !!! Do you mean http://www.mmbase.org/packages with the packages pages? I am afraid this page is still not deprecated since some of the applications are in mmbase.sourceforge.net and others are only released as source zip (e.g. EGEM mail). I will go through the packages page to remove all packages that are on the maven projects-overview.html and rename the page to "external packages". Regards, Henk. ___ Developers mailing list Developers@lists.mmbase.org http://lists.mmbase.org/mailman/listinfo/developers
Re: [Developers] Maven repository
André van Toly wrote: Hi Nico, Op 12-dec-2006, om 13:01 heeft Nico Klasens het volgende geschreven: Hello Developers, This morning I updated the CMSContainer contribution with the latest sources. This week we are going to switch all developers to use mmbase.org, but for that the CVS files are not enough. We alos require a maven repository which is not finalist internal. Current files in cvs.mmbase.org still point to a maven repository on our intranet server. I would like to have one on mmbase.org which will contain the mmbase and cmsc binaries. So how can we set that up? Do they need to be on cvs.mmbase.org or is www.mmbase.org enough? If the latter, please state what you would prefer and what would be the most convenient set-up? Just a dir on www.mmbase.org is enough eg (http://www.mmbase.org/maven/). A maven repository is just a directory on a webserver which follows a certain layout. It is enoguh when I can add files to this dir. Nico ___ Developers mailing list Developers@lists.mmbase.org http://lists.mmbase.org/mailman/listinfo/developers
Re: [Developers] Maven repository
Hi Nico, Op 12-dec-2006, om 13:01 heeft Nico Klasens het volgende geschreven: Hello Developers, This morning I updated the CMSContainer contribution with the latest sources. This week we are going to switch all developers to use mmbase.org, but for that the CVS files are not enough. We alos require a maven repository which is not finalist internal. Current files in cvs.mmbase.org still point to a maven repository on our intranet server. I would like to have one on mmbase.org which will contain the mmbase and cmsc binaries. So how can we set that up? Do they need to be on cvs.mmbase.org or is www.mmbase.org enough? If the latter, please state what you would prefer and what would be the most convenient set-up? ---Andre -- André van Toly MMBase development & Userfriendly webdesign W: http://www.toly.nl M: +31(0)627233562 -- ~~<<>>~~ ___ Developers mailing list Developers@lists.mmbase.org http://lists.mmbase.org/mailman/listinfo/developers
Re: [Developers] maven 2 vs maven 1
Michiel Meeuwissen wrote: I was about to explore how we should finally start using maven, only to find out that all existing project.xml's don't work with my version of maven (2.0.4), which expects pom.xml files. The good thing was that it at least started working immediately when I figured out how to generate a pom.xml file. So, I think we decided long ago that we should actually sooner or later migrate to maven. The question arises though, are we going to migrate to maven 1 or maven 2? Investing any time in learning how to use maven 1 seems a bit folly. Michiel The maven1 build works for almost a year now. There are only some loose ends like the rmmci applications and the testcases. The maven1 build creates mmbase-module artifacts which contains the jar and all others sources to install it in a war. This is all done by a maven-plugin. The plugin can also extract the mmbase-module into a war. See the example-webapp. Maven2 will work to create the jars, but not what the mmbase-module plugin can do. Maybe it is an idea to create a Maven2 plugin (Mojo) in the component project which creates an artifact based on the new componenet structure. Another option is to wait for a while, because it is also on the cmscontainer roadmap 2007. Nico ___ Developers mailing list Developers@lists.mmbase.org http://lists.mmbase.org/mailman/listinfo/developers
Re: [Developers] Maven build not working ?
Hello Daniel, Seems you have run into an issue with maven http://jira.codehaus.org/browse/MPJAVA-4 According to the issue the maven.compile.fork property should be false. This property is in "/Users/danielockeloen/Desktop/cmscontainer_alpha-release Folder/maven-base/project.properties" Another solution is to remove the space in the directory. Nico Daniel Ockeloen wrote: On Feb 14, 2006, at 2:34 PM, Nico Klasens wrote: I need some more info. For example what does the nearest line similar to this say + | Executing multiproject:install-callback CMS container sitemanagement | Memory: 11M/12M + And when you do a maven -X multiproject:install which project.xml is it complain about? Nico Well if i do it from the cmsc dir i get this : not sure where the ''@/Users/danielockeloen/Desktop/ cmscontainer_alpha-release Folder/cmsc/files1536779604" comes from Daniel. -- '-sourcepath' '/Users/danielockeloen/Desktop/cmscontainer_alpha-release Folder/cmsc/ utilities/src/java' '-target' '1.4' '-g' '-source' '1.4' '@/Users/danielockeloen/Desktop/cmscontainer_alpha-release Folder/ cmsc/files1536779604' The ' characters around the executable and arguments are not part of the command. [javac] javac: invalid flag: /Users/danielockeloen/Desktop/ cmscontainer_alpha-release [javac] Usage: javac [javac] where possible options include: [javac] -g Generate all debugging info [javac] -g:noneGenerate no debugging info [javac] -g:{lines,vars,source} Generate only some debugging info [javac] -nowarnGenerate no warnings [javac] -verbose Output messages about what the compiler is doing [javac] -deprecation Output source locations where deprecated APIs are used [javac] -classpath Specify where to find user class files [javac] -cp Specify where to find user class files [javac] -sourcepath Specify where to find input source files [javac] -bootclasspath Override location of bootstrap class files [javac] -extdirs Override location of installed extensions [javac] -endorseddirsOverride location of endorsed standards path [javac] -d Specify where to place generated class files [javac] -encodingSpecify character encoding used by source files [javac] -source Provide source compatibility with specified release [javac] -target Generate class files for specific VM version [javac] -version Version information [javac] -help Print a synopsis of standard options [javac] -X Print a synopsis of nonstandard options [javac] -J Pass directly to the runtime system [javac] popping off [EMAIL PROTECTED] for [EMAIL PROTECTED] in maven-pom- plugin:maven-pom-plugin popping off [EMAIL PROTECTED] for [EMAIL PROTECTED] in maven-multiproject- plugin:maven-multiproject-plugin popping off [EMAIL PROTECTED] for [EMAIL PROTECTED] in maven-artifact- plugin:maven-artifact-plugin popping off [EMAIL PROTECTED] for [EMAIL PROTECTED] in maven-xdoc- plugin:maven-xdoc-plugin popping off [EMAIL PROTECTED] for [EMAIL PROTECTED] in finalist:cmsc- utilities popping off [EMAIL PROTECTED] for [EMAIL PROTECTED] in maven-pom- plugin:maven-pom-plugin popping off [EMAIL PROTECTED] for [EMAIL PROTECTED] in maven-multiproject- plugin:maven-multiproject-plugin popping off [EMAIL PROTECTED] for [EMAIL PROTECTED] in maven-artifact- plugin:maven-artifact-plugin popping off [EMAIL PROTECTED] for [EMAIL PROTECTED] in maven-xdoc- plugin:maven-xdoc-plugin popping off [EMAIL PROTECTED] for [EMAIL PROTECTED] in Global Project:Global Project BUILD FAILED File.. /Users/danielockeloen/dev/software/maven-1.0.2/.maven/ cache/maven-multiproject-plugin-1.3.1/plugin.jelly Element... maven:reactor Line.. 208 Column 9 Unable to obtain goal [multiproject:install-callback] -- /Users/ danielockeloen/dev/software/maven-1.0.2/.maven/cache/maven-java- plugin-1.5/plugin.jelly:63:48: Compile failed; see the compiler error output for details. com.werken.werkz.UnattainableGoalException: Unable to obtain goal [multiproject:install] -- /Users/danielockeloen/dev/software/ maven-1.0.2/.maven/cache/maven-multiproject-plugin-1.3.1/plugin.jelly: 208:9: Reactor subproject failure occurred at com.werken.werkz.Goal.fire(Goal.java:646) ___ Developers mailing list Developers@lists.mmbase.org http://lists.mmbase.org/mailman/listinfo/developers ___ Developers mailing list Developers@lists.mmbase.org http://l
Re: [Developers] Maven build not working ?
On Feb 14, 2006, at 2:34 PM, Nico Klasens wrote: I need some more info. For example what does the nearest line similar to this say + | Executing multiproject:install-callback CMS container sitemanagement | Memory: 11M/12M + And when you do a maven -X multiproject:install which project.xml is it complain about? Nico Well if i do it from the cmsc dir i get this : not sure where the ''@/Users/danielockeloen/Desktop/ cmscontainer_alpha-release Folder/cmsc/files1536779604" comes from Daniel. -- '-sourcepath' '/Users/danielockeloen/Desktop/cmscontainer_alpha-release Folder/cmsc/ utilities/src/java' '-target' '1.4' '-g' '-source' '1.4' '@/Users/danielockeloen/Desktop/cmscontainer_alpha-release Folder/ cmsc/files1536779604' The ' characters around the executable and arguments are not part of the command. [javac] javac: invalid flag: /Users/danielockeloen/Desktop/ cmscontainer_alpha-release [javac] Usage: javac [javac] where possible options include: [javac] -g Generate all debugging info [javac] -g:noneGenerate no debugging info [javac] -g:{lines,vars,source} Generate only some debugging info [javac] -nowarnGenerate no warnings [javac] -verbose Output messages about what the compiler is doing [javac] -deprecation Output source locations where deprecated APIs are used [javac] -classpath Specify where to find user class files [javac] -cp Specify where to find user class files [javac] -sourcepath Specify where to find input source files [javac] -bootclasspath Override location of bootstrap class files [javac] -extdirs Override location of installed extensions [javac] -endorseddirsOverride location of endorsed standards path [javac] -d Specify where to place generated class files [javac] -encodingSpecify character encoding used by source files [javac] -source Provide source compatibility with specified release [javac] -target Generate class files for specific VM version [javac] -version Version information [javac] -help Print a synopsis of standard options [javac] -X Print a synopsis of nonstandard options [javac] -J Pass directly to the runtime system [javac] popping off [EMAIL PROTECTED] for [EMAIL PROTECTED] in maven-pom- plugin:maven-pom-plugin popping off [EMAIL PROTECTED] for [EMAIL PROTECTED] in maven-multiproject- plugin:maven-multiproject-plugin popping off [EMAIL PROTECTED] for [EMAIL PROTECTED] in maven-artifact- plugin:maven-artifact-plugin popping off [EMAIL PROTECTED] for [EMAIL PROTECTED] in maven-xdoc- plugin:maven-xdoc-plugin popping off [EMAIL PROTECTED] for [EMAIL PROTECTED] in finalist:cmsc- utilities popping off [EMAIL PROTECTED] for [EMAIL PROTECTED] in maven-pom- plugin:maven-pom-plugin popping off [EMAIL PROTECTED] for [EMAIL PROTECTED] in maven-multiproject- plugin:maven-multiproject-plugin popping off [EMAIL PROTECTED] for [EMAIL PROTECTED] in maven-artifact- plugin:maven-artifact-plugin popping off [EMAIL PROTECTED] for [EMAIL PROTECTED] in maven-xdoc- plugin:maven-xdoc-plugin popping off [EMAIL PROTECTED] for [EMAIL PROTECTED] in Global Project:Global Project BUILD FAILED File.. /Users/danielockeloen/dev/software/maven-1.0.2/.maven/ cache/maven-multiproject-plugin-1.3.1/plugin.jelly Element... maven:reactor Line.. 208 Column 9 Unable to obtain goal [multiproject:install-callback] -- /Users/ danielockeloen/dev/software/maven-1.0.2/.maven/cache/maven-java- plugin-1.5/plugin.jelly:63:48: Compile failed; see the compiler error output for details. com.werken.werkz.UnattainableGoalException: Unable to obtain goal [multiproject:install] -- /Users/danielockeloen/dev/software/ maven-1.0.2/.maven/cache/maven-multiproject-plugin-1.3.1/plugin.jelly: 208:9: Reactor subproject failure occurred at com.werken.werkz.Goal.fire(Goal.java:646) ___ Developers mailing list Developers@lists.mmbase.org http://lists.mmbase.org/mailman/listinfo/developers
Re: [Developers] Maven build not working ?
I need some more info. For example what does the nearest line similar to this say + | Executing multiproject:install-callback CMS container sitemanagement | Memory: 11M/12M + And when you do a maven -X multiproject:install which project.xml is it complain about? Nico Daniel Ockeloen wrote: On Feb 13, 2006, at 1:23 PM, Nico Klasens wrote: Daniel Ockeloen wrote: On Feb 13, 2006, at 12:02 PM, Nico Klasens wrote: Read the MMBASE.txt which is included in the CMSC-alpha release Nico Maybe you can help me some more i now get the following error : if i give in maven multiproject:install -- BUILD FAILED File.. /Users/danielockeloen/dev/software/maven-1.0.2/.maven/ cache/maven-multiproject-plugin-1.3.1/plugin.jelly Element... maven:reactor Line.. 54 Column 305 Error reading XML or initializing Total time: 11 seconds Finished at: Mon Feb 13 18:22:14 CET 2006 -- The line in question is : - banner="Gathering project list" includes="$ {maven.multiproject.includes}" excludes="$ {maven.multiproject.excludes}" postProcessing="true" collectOnly="true" collectionVar="multiprojects" ignoreFailures="$ {maven.multiproject.ignoreFailures}" /> - Sorry to be such a noob, Daniel. ___ Developers mailing list Developers@lists.mmbase.org http://lists.mmbase.org/mailman/listinfo/developers ___ Developers mailing list Developers@lists.mmbase.org http://lists.mmbase.org/mailman/listinfo/developers
Re: [Developers] Maven build not working ?
On Feb 13, 2006, at 1:23 PM, Nico Klasens wrote: Daniel Ockeloen wrote: On Feb 13, 2006, at 12:02 PM, Nico Klasens wrote: Read the MMBASE.txt which is included in the CMSC-alpha release Nico Maybe you can help me some more i now get the following error : if i give in maven multiproject:install -- BUILD FAILED File.. /Users/danielockeloen/dev/software/maven-1.0.2/.maven/ cache/maven-multiproject-plugin-1.3.1/plugin.jelly Element... maven:reactor Line.. 54 Column 305 Error reading XML or initializing Total time: 11 seconds Finished at: Mon Feb 13 18:22:14 CET 2006 -- The line in question is : - banner="Gathering project list" includes="$ {maven.multiproject.includes}" excludes="$ {maven.multiproject.excludes}" postProcessing="true" collectOnly="true" collectionVar="multiprojects" ignoreFailures="$ {maven.multiproject.ignoreFailures}" /> - Sorry to be such a noob, Daniel. ___ Developers mailing list Developers@lists.mmbase.org http://lists.mmbase.org/mailman/listinfo/developers
Re: [Developers] Maven build not working ?
Daniel Ockeloen wrote: On Feb 13, 2006, at 12:02 PM, Nico Klasens wrote: Read the MMBASE.txt which is included in the CMSC-alpha release Nico yeah well im stupid, why is this not in the mmbase build dit but in the cmsc release ? This file ws already in the mmbase speeltuin maven build. Guess I forgot to add it when I added the maven build. I still get errors this is the first time i use maven and probably doing something very wrong. files in my .maven dir maven$ls -l .maven/repository/jai/jars/jai_core-1.1.2_01.jar -rw-r--r-- 1 danieloc staff 1018297 Feb 13 12:10 .maven/ repository/jai/jars/jai_core-1.1.2_01.jar maven$ls -l .maven/repository/jai/jars/jai_codec-1.1.2_01.jar -rw-r--r-- 1 danieloc staff 183441 Feb 13 12:12 .maven/repository/ jai/jars/jai_codec-1.1.2_01.jar -- still if i give maven install:all in my mmbase dir i get : - Attempting to download jai_codec-1.1.2_01.jar. Error retrieving artifact from [http://mmapps.sourceforge.net/ distributions/jai/jars/jai_codec-1.1.2_01.jar]: java.net.ConnectException: Operation timed out Could you try to do a 'maven -X jar' in the root of the mmbase all module. Just before the log starts to comp[ain about downloading it should say: "[DEBUG] Adding reference: maven.dependency.classpath ->" Any files missing from this classpath will be downloaded from the remote repositories. There must be a mismatch in this path and the local repository. Nico ___ Developers mailing list Developers@lists.mmbase.org http://lists.mmbase.org/mailman/listinfo/developers
Re: [Developers] Maven build not working ?
On Feb 13, 2006, at 12:02 PM, Nico Klasens wrote: Read the MMBASE.txt which is included in the CMSC-alpha release Nico yeah well im stupid, why is this not in the mmbase build dit but in the cmsc release ? I still get errors this is the first time i use maven and probably doing something very wrong. files in my .maven dir maven$ls -l .maven/repository/jai/jars/jai_core-1.1.2_01.jar -rw-r--r-- 1 danieloc staff 1018297 Feb 13 12:10 .maven/ repository/jai/jars/jai_core-1.1.2_01.jar maven$ls -l .maven/repository/jai/jars/jai_codec-1.1.2_01.jar -rw-r--r-- 1 danieloc staff 183441 Feb 13 12:12 .maven/repository/ jai/jars/jai_codec-1.1.2_01.jar -- still if i give maven install:all in my mmbase dir i get : - Attempting to download jai_codec-1.1.2_01.jar. Error retrieving artifact from [http://mmapps.sourceforge.net/ distributions/jai/jars/jai_codec-1.1.2_01.jar]: java.net.ConnectException: Operation timed out Daniel. ___ Developers mailing list Developers@lists.mmbase.org http://lists.mmbase.org/mailman/listinfo/developers
Re: [Developers] Maven build not working ?
Read the MMBASE.txt which is included in the CMSC-alpha release Nico Daniel Ockeloen wrote: Hai, I wanted to try karma and for that i need to build mmbase with maven (i think) but get the following error : - WARNING: Failed to download jai_core-1.1.2_01.jar. The build cannot continue because of the following unsatisfied dependencies: jai_codec-1.1.2_01.jar (try downloading from http://java.sun.com/ products/java-media/jai/index.jsp) -- Can someone tell me if there is a working project file or can someone fix this ?. Or is there a way i can 'load' these jars into maven... I am guessing that because i didn't get mmbase build with maven i get this error when building karma. I don't really understand why it wants to download mmbase but i guess it means download from the repository right? - Attempting to download mmbase-1.8.0-SNAPSHOT.mmbase-module. WARNING: Failed to download mmbase-1.8.0-SNAPSHOT.mmbase-module. - As allways i am clueless so please help :). Greetings, Daniel Ockeloen. ___ Developers mailing list Developers@lists.mmbase.org http://lists.mmbase.org/mailman/listinfo/developers ___ Developers mailing list Developers@lists.mmbase.org http://lists.mmbase.org/mailman/listinfo/developers
Re: [Developers] Maven project?
Rob van Maris wrote: > On May 24, 2005, at 10:33 PM, Michiel Meeuwissen wrote: > > >In other words; I'm currently doing as little as possible on the > >current > >build, which in practice means that for the time being the inverse > >goal of > >maven is reached: no improvemnts whatsoever in the build... > > > > Exactly what would you be doing otherwise? Apparently there are > things about the current build that need to be addressed (as in "need > to fixed") after all? One matter is that there is currently no build in the 'contribution' module. Meaning that the contributions are not built in the nightly build and are not downloadable from mmbase.org. Well, actually there is still only one 'contribution' there, but we are avidly waiting for mmbob at least Simplest would be to simply copy buildbase.xml from 'applications' to 'contributions' or to somehow reuse it. But that would really be less than nice, ant frankly I thought that an argument against by point that the main effect of splitting up 'applications' and 'contributions' would be complication of the build, was that maven would solve that soon... There are some small bugs in the build too, of course, as no code is without bugs. IIRC, and e.g., the documentation target does not always work; it does in some cases not work if build.documentation=false, and I find that it _always should_ build the documentation if you explicitely say so (with something like 'ant build.documentation'). Small issue, not worth fixing if not reasonably sure that it'll remain in use for a reasonable period of time... Michiel -- Michiel Meeuwissen mihxil' Mediacentrum 140 H'sum[] () +31 (0)35 6772979 nl_NL eo_XX en_US ___ Developers mailing list Developers@lists.mmbase.org http://lists.mmbase.org/mailman/listinfo/developers
Re: [Developers] Maven project?
On May 24, 2005, at 10:33 PM, Michiel Meeuwissen wrote: In other words; I'm currently doing as little as possible on the current build, which in practice means that for the time being the inverse goal of maven is reached: no improvemnts whatsoever in the build... Exactly what would you be doing otherwise? Apparently there are things about the current build that need to be addressed (as in "need to fixed") after all? Regards, Rob van Maris ___ Developers mailing list Developers@lists.mmbase.org http://lists.mmbase.org/mailman/listinfo/developers
Re: [Developers] Maven project?
Nico Klasens wrote: > > > >If we are happy, we can gradually also replace the build of mmbase.jar > >and of documentation etc.. If we are not happy, we simply throw it away > >again, or - more realisticly - will live with two formalisms > >simultaneously for ever... > > We don't have to use maven yet. There is a mavenize goal in the > speeltuin which converts the current cvs structure to the desired maven > structure. The speeltuin sources are not there yet to replace the > current build, but I hope to have a new version in the near future. The point is that I don't feel like making improvements in the current build process, if other persons are investing their time in a concurrent - if future- build process in speeltuin. In that case I would rather have something with maven in e.g. the contributions module right now. In other words; I'm currently doing as little as possible on the current build, which in practice means that for the time being the inverse goal of maven is reached: no improvemnts whatsoever in the build... Michiel -- Michiel Meeuwissen mihxil' Mediacentrum 140 H'sum[] () +31 (0)35 6772979 nl_NL eo_XX en_US ___ Developers mailing list Developers@lists.mmbase.org http://lists.mmbase.org/mailman/listinfo/developers
Re: [Developers] Maven project?
marcel maatkamp wrote: On Tuesday 24 May 2005 09:54, Pierre van Rooden wrote: So, after Nico's presentation at the dev meeting, what do people think of the use of Maven for MMBase? Is there a way to look at the maven build files nico used? The maven-documentation is a bit 'sparse' and some examples on how to build in maven would be appreciated. The demo files are in the speeltuin module under keesj/maven. http://cvs.mmbase.org/viewcvs/speeltuin/keesj/maven/ There are some textfiles which describe what to do. Nico ___ Developers mailing list Developers@lists.mmbase.org http://lists.mmbase.org/mailman/listinfo/developers
Re: [Developers] Maven project?
Michiel Meeuwissen wrote: Pierre van Rooden wrote: So, after Nico's presentation at the dev meeting, what do people think of the use of Maven for MMBase? As Ernst pointed out I feel that we indeed do have a formalized build process already, and that it would be a bit folly to throw that out of the window. I tried to make this point at the presentation. We have a build system which does what it should do. We don't have to switch to maven. Just look at all the religious discussing on the web between ant an maven. Maven is very useful when you start from scratch. MMbase is not starting from scratch. The only question is if maven can do more for us then the current ant build. Still I feel that with maven we may be better suited for the future, because sooner or later we are going to want something which we don't currently support in our build already. E.g. the maven reports are quite neat, and I would not like to imitate that, and I rather would migrate to maven then. At the committers meeting we discussed how we can improve our communication channels and how we can make it easier for mmbase-users/developers to use mmbase in their projects. The current ant build system does not have good support for both. Maven generates a project site which communicates what the status of mmbase is. Maven gives project management (that's us) insight in the progress of the project. Maven has an implementation to handle internal and external dependencies. MMbase is an external dependencies for users and should be easy to use in their projects. We, committers, want more patches from users and I believe a maven build system could offer that. The current maven sources in speeltuin are a first setup and could be extended to have a default build system for a user mmbase project. Users could then add and remove the mmbase sources when they want in their development process. I would propose that we start using maven for simple things first, e.g. the applications module and more importantly the 'contributions' module, because that last one lacks a build completely, also because this 'maven' decision keeps pending. In that way everybody is forced to use it, it hardly can give very many problems because it realy is quite straighforward there. We can easily see what kind of problems it gives and/or solves. If we are happy, we can gradually also replace the build of mmbase.jar and of documentation etc.. If we are not happy, we simply throw it away again, or - more realisticly - will live with two formalisms simultaneously for ever... We don't have to use maven yet. There is a mavenize goal in the speeltuin which converts the current cvs structure to the desired maven structure. The speeltuin sources are not there yet to replace the current build, but I hope to have a new version in the near future. Nico ___ Developers mailing list Developers@lists.mmbase.org http://lists.mmbase.org/mailman/listinfo/developers
RE: [Developers] Maven project?
ah, it's allready there: http://mmapps.sourceforge.net/maven-apps2-plugin/ :) Ernst > -Oorspronkelijk bericht- > Van: [EMAIL PROTECTED] > [mailto:[EMAIL PROTECTED] Namens Michiel Meeuwissen > Verzonden: dinsdag 24 mei 2005 17:15 > Aan: Discussion list for developers > Onderwerp: Re: [Developers] Maven project? > > > Ernst Bunders wrote: > > > > do i see an apps2 plugin shimmering at the horizon :) > > Yes, actually it seems that there is quite some overlap with > 'packaging' here too, because I think that whatever happens, > the build must be able to produce 'packages', and packaging > must be able to call the build. > > > Michiel > > > -- > Michiel Meeuwissen mihxil' > Mediacentrum 140 H'sum[] () > +31 (0)35 6772979 nl_NL eo_XX en_US > > > > ___ > Developers mailing list > Developers@lists.mmbase.org > http://lists.mmbase.org/mailman/listinfo/developers > ___ Developers mailing list Developers@lists.mmbase.org http://lists.mmbase.org/mailman/listinfo/developers
Re: [Developers] Maven project?
Ernst Bunders wrote: > > do i see an apps2 plugin shimmering at the horizon :) Yes, actually it seems that there is quite some overlap with 'packaging' here too, because I think that whatever happens, the build must be able to produce 'packages', and packaging must be able to call the build. Michiel -- Michiel Meeuwissen mihxil' Mediacentrum 140 H'sum[] () +31 (0)35 6772979 nl_NL eo_XX en_US ___ Developers mailing list Developers@lists.mmbase.org http://lists.mmbase.org/mailman/listinfo/developers
RE: [Developers] Maven project?
> -Oorspronkelijk bericht- > Van: [EMAIL PROTECTED] > [mailto:[EMAIL PROTECTED] Namens Michiel Meeuwissen > Verzonden: dinsdag 24 mei 2005 14:35 > Aan: Discussion list for developers > Onderwerp: Re: [Developers] Maven project? > > > Pierre van Rooden wrote: > > Kees Jongenburger wrote: > > >I think you are missing the point. If we start using maven > I think we > > >will be able to spend less time documenting and fixing the build > > >system > > > > I think the question is: what needs to be fixed? > > - I think hardly anybody currently understands how it works > - That is valid even more for the 'nightly' build. > - We miss the reporting functionality, and for example project file > generation. > > > I think not much is actually broken at the moment, but I do > understand the point of maven to facilitate new features more easily. do i see an apps2 plugin shimmering at the horizon :) Ernst > > Michiel > > > -- > Michiel Meeuwissen mihxil' > Mediacentrum 140 H'sum[] () > +31 (0)35 6772979 nl_NL eo_XX en_US > > > > ___ > Developers mailing list > Developers@lists.mmbase.org > http://lists.mmbase.org/mailman/listinfo/developers > ___ Developers mailing list Developers@lists.mmbase.org http://lists.mmbase.org/mailman/listinfo/developers
Re: [Developers] Maven project?
Forwarding Kees Jongenburger's reply. I think the question is: what needs to be fixed? I think we need an unified build process for core , contribs and applications. What is needed for that is a way to define depenencies so we can test applications against for exampe specific mmbase versions. So IMHO wat's broken is how the build system handle dependencies, and not only internal deps but also external deps. -- Pierre van Rooden Mediapark, C 107 tel. +31 (0)35 6772815 "Anything worth doing is worth overdoing." ___ Developers mailing list Developers@lists.mmbase.org http://lists.mmbase.org/mailman/listinfo/developers
Re: [Developers] Maven project?
Pierre van Rooden wrote: > Kees Jongenburger wrote: > >I think you are missing the point. If we start using maven I think we > >will be able to spend less time documenting and fixing the build > >system > > I think the question is: what needs to be fixed? - I think hardly anybody currently understands how it works - That is valid even more for the 'nightly' build. - We miss the reporting functionality, and for example project file generation. I think not much is actually broken at the moment, but I do understand the point of maven to facilitate new features more easily. Michiel -- Michiel Meeuwissen mihxil' Mediacentrum 140 H'sum[] () +31 (0)35 6772979 nl_NL eo_XX en_US ___ Developers mailing list Developers@lists.mmbase.org http://lists.mmbase.org/mailman/listinfo/developers
Re: [Developers] Maven project?
Kees Jongenburger wrote: I think you are missing the point. If we start using maven I think we will be able to spend less time documenting and fixing the build system I think the question is: what needs to be fixed? -- Pierre van Rooden Mediapark, C 107 tel. +31 (0)35 6772815 "Anything worth doing is worth overdoing." ___ Developers mailing list Developers@lists.mmbase.org http://lists.mmbase.org/mailman/listinfo/developers
Re: [Developers] Maven project?
On 5/24/05, Ernst Bunders <[EMAIL PROTECTED]> wrote: > I think that if it's not broken, don't fix it. > One (and probably the most important) feature of maven is to formalize > the build process. But it seems to me mmbase has a formalaized process > allready. If we want to put effort in it we could do that by documenting > it's features so the formalization becomes obveous to all. Perhaps we > could make testing more important (test fale, build fale). I think you are missing the point. If we start using maven I think we will be able to spend less time documenting and fixing the build system and we be able to spend more time improving mmbase. Making the current build system suitable for automated builds of external components is not an option IMHO. Also I don't think the mmbase packagemanager will solve this problem for us. ___ Developers mailing list Developers@lists.mmbase.org http://lists.mmbase.org/mailman/listinfo/developers
RE: [Developers] Maven project?
you could checkout some stuff from mmapps (http://mmapps.sourceforge.net/) and take a look at how it works ernst > -Oorspronkelijk bericht- > Van: [EMAIL PROTECTED] > [mailto:[EMAIL PROTECTED] Namens marcel maatkamp > Verzonden: dinsdag 24 mei 2005 12:00 > Aan: developers@lists.mmbase.org > Onderwerp: Re: [Developers] Maven project? > > > On Tuesday 24 May 2005 09:54, Pierre van Rooden wrote: > > So, after Nico's presentation at the dev meeting, what do > people think > > of the use of Maven for MMBase? > > Is there a way to look at the maven build files nico used? > The maven-documentation is a bit 'sparse' and some examples > on how to build in maven would be appreciated. > > gr, > marcel > ___ Developers mailing list Developers@lists.mmbase.org http://lists.mmbase.org/mailman/listinfo/developers
Re: [Developers] Maven project?
On Tuesday 24 May 2005 09:54, Pierre van Rooden wrote: > So, after Nico's presentation at the dev meeting, what do people think > of the use of Maven for MMBase? Is there a way to look at the maven build files nico used? The maven-documentation is a bit 'sparse' and some examples on how to build in maven would be appreciated. gr, marcel pgp1Q0RUdJu5P.pgp Description: PGP signature ___ Developers mailing list Developers@lists.mmbase.org http://lists.mmbase.org/mailman/listinfo/developers
Re: [Developers] Maven project?
Pierre van Rooden wrote: > So, after Nico's presentation at the dev meeting, what do people think > of the use of Maven for MMBase? As Ernst pointed out I feel that we indeed do have a formalized build process already, and that it would be a bit folly to throw that out of the window. Still I feel that with maven we may be better suited for the future, because sooner or later we are going to want something which we don't currently support in our build already. E.g. the maven reports are quite neat, and I would not like to imitate that, and I rather would migrate to maven then. I would propose that we start using maven for simple things first, e.g. the applications module and more importantly the 'contributions' module, because that last one lacks a build completely, also because this 'maven' decision keeps pending. In that way everybody is forced to use it, it hardly can give very many problems because it realy is quite straighforward there. We can easily see what kind of problems it gives and/or solves. If we are happy, we can gradually also replace the build of mmbase.jar and of documentation etc.. If we are not happy, we simply throw it away again, or - more realisticly - will live with two formalisms simultaneously for ever... Michiel -- Michiel Meeuwissen mihxil' Mediacentrum 140 H'sum[] () +31 (0)35 6772979 nl_NL eo_XX en_US ___ Developers mailing list Developers@lists.mmbase.org http://lists.mmbase.org/mailman/listinfo/developers
RE: [Developers] Maven project?
I think that if it's not broken, don't fix it. One (and probably the most important) feature of maven is to formalize the build process. But it seems to me mmbase has a formalaized process allready. If we want to put effort in it we could do that by documenting it's features so the formalization becomes obveous to all. Perhaps we could make testing more important (test fale, build fale). I think things like the website maven generates (and one of my favourites: instant eclipse project) is a nice to have, and no good reason to rework the build process. Maybe a merge between mmapps and mmbase cvs could be a good reason, but otherwise? Ernst > -Oorspronkelijk bericht- > Van: [EMAIL PROTECTED] > [mailto:[EMAIL PROTECTED] Namens Pierre van Rooden > Verzonden: dinsdag 24 mei 2005 9:54 > Aan: Discussion list for developers > Onderwerp: [Developers] Maven project? > > > So, after Nico's presentation at the dev meeting, what do > people think > of the use of Maven for MMBase? > > -- > Pierre van Rooden > Mediapark, C 107 tel. +31 (0)35 6772815 > "Anything worth doing is worth overdoing." > ___ > Developers mailing list > Developers@lists.mmbase.org > http://lists.mmbase.org/mailman/listinfo/developers > ___ Developers mailing list Developers@lists.mmbase.org http://lists.mmbase.org/mailman/listinfo/developers
Re: [Developers] Maven project
Pierre van Rooden wrote: Kees Jongenburger wrote: That is why I propose to use maven. I suggest you propose a project and a project leader to do this. Because this does change the build setup, and therefor how current developers work with MMBase, I think it warrants a vote, also so you can gather support in developers aiding the project. I think that's a good idea. I don't think the maven build process would interfere with the ant build process, so we could start mavenizing MMBase without breaking the old process. If it has been successfull we could have a vote. Gerard ___ Developers mailing list Developers@lists.mmbase.org http://lists.mmbase.org/mailman/listinfo/developers
Re: [Developers] Maven project
Pierre van Rooden wrote: Kees Jongenburger wrote: That is why I propose to use maven. I suggest you propose a project and a project leader to do this. Because this does change the build setup, and therefor how current developers work with MMBase, I think it warrants a vote, also so you can gather support in developers aiding the project. I want to contribute in this, but then from my scope, the "i-am-newby-and-want-to-run-mmmbase-with-one-click-in-netbeans". Kees told me that when we would start using Maven this would also be possible, so i am positive about this ___ Developers mailing list Developers@lists.mmbase.org http://lists.mmbase.org/mailman/listinfo/developers
RE: [Developers] maven
> > Every developer wants it in one style and preferrable his style. > > Nowadays, I try to stick to the style the original > developer chose to > > work in. I have heard of some projects who do a code format > when someone does a checkin. > > I don't like the cvs expansion tags. They are always screwing up a > > diff between 2 branches. > try > cvs update -kk -j HEAD MyFile.java Uhh, where can I click? Yes that works, but you have to watch out when you try to get two natural enemies (branches and keyword) work together. The -kk resets all expansion modes (in older version even the -kb, binary) which can skrew up some things. Maybe, the version is handy for vi-people, but they are obsolete in an IDE. Nico ___ Developers mailing list Developers@lists.mmbase.org http://lists.mmbase.org/mailman/listinfo/developers
Re: [Developers] maven
> Every developer wants it in one style and preferrable his style. Nowadays, I > try to stick to the style the original developer chose to work in. I have > heard of some projects who do a code format when someone does a checkin. > I don't like the cvs expansion tags. They are always screwing up a diff > between 2 branches. try cvs update -kk -j HEAD MyFile.java ___ Developers mailing list Developers@lists.mmbase.org http://lists.mmbase.org/mailman/listinfo/developers
RE: [Developers] maven
> > A long time ago I suggested to do this style cleanup. Since > > that time > > I have become much more practical and dropped my code style > > idealism. > > I replaced it with my idealism for code standards (things > > pmd checks). > > If I can read it in one pass and understand what it does > > then it is ok > > for me. It is nice to see with this report how our styles differ. > > This checkstyle file was orinigaly based on the uml2mmbase > finalist checks. > I added som extra checks for the @version tag and allowed > lines to be longer then 80 chars. I must say than since I use > an IDE I care less about identing but I like the code to > have one style. Every developer wants it in one style and preferrable his style. Nowadays, I try to stick to the style the original developer chose to work in. I have heard of some projects who do a code format when someone does a checkin. I don't like the cvs expansion tags. They are always screwing up a diff between 2 branches. I still add them to the mmbase sources, because it is in the mmbase coding standards, but I don't like it. > > require code changes and releases to production. We decided > > to use the > > HEAD as our stable release branch and develop the new > > projects on other branches. > > The HEAD is now always available to release to production > > if an major > > issue arises or small (fast) change request should be applied. The > > projects don't have to worry about breaking the release. When a > > project finishes then the branch will be merged back to the HEAD. > > Do you have more experience in developing that way? > isn't it to much trouble merging every time? > You say that your application code is used in multiple > situation is every bugfix in the HEAD a new release , or do > you work with patches? I am not an expert on this field, but we, the development team, have put some thoughts into it how we can manage the changes of multiple projects. We want to go to a release cycle of every 2 or 3 weeks. With these short release cycles, small bugfixes and change requests can wait for the next release. If a major issue arises on production we can make a new release anytime (the HEAD should be stable at all times) and schedule it for the next production maintenance window. Maybe merging sounds horrible to do at the end of every project, but it has its advantagss. You always need a stable branch and a development branch. Mmbase has at the moment the HEAD and MMBase-1_7. Mmbase developers have to merge every bugfix into both branches. When you merge at the end of a project then you only have to add the bugfix to the stable branch. The project branch is only for development purpose and doesn't require the bugfix. Developers can play with the code whatever they like without breaking the build of other branches (stable and other project). With mmbase we always have to wait for a new release until all active projects finish. A lot of people only want to use releases and that means for them that they have to wait a lot longer for new functionality then necessary. > > > > > Maven > > | project.xml > > | project.properties > > | build.properties (developers system paths/settings) > > | UTIL > > | TEST (some testing utils) > > for mmapps every project.xml extends from a base project. to > make it possible to checkout a single project every project > is a cvs module that contains the mmapps-base project > > mmbasedoclet >mmapps-base/mmapps-project.xml >project.xml (extends mmapps-project.xml) > > This als makes it possible that when a project is tagged the > mmapps-project.xml is also tagged. > > I am still wondering if I want the project.xml(s) to be in > the same cvs as the source core , since the project can > contain information about multiple versions. A project.xml in a branch only contains the history of the code in that branch. It tells what versions the code went through before it ended up in that branch. I don't see a problem with that. Nico ___ Developers mailing list Developers@lists.mmbase.org http://lists.mmbase.org/mailman/listinfo/developers
RE: [Developers] maven
Hello Kees, > I have created some maven build files for mmbase that can be > found in speeltuin/keesj/maven. for that goal I have split up > the mmbase in 4 parts. It might be interesting if you plan on > using maven for your projects. Great, the files already show what maven can do for you. > mmbase-core (the core classes, no weird deps) > mmbase-core-config (the default mmbase configuration) > mmbase-taglib (the mmbase taglib) mmbase-webapp (a project to > create mmbas"ed" webapps) > > here are some results: > http://keesj.mmapps.net/~keesj/mmbase-taglib/ > interesting parts: > taglib documentation: > http://keesj.mmapps.net/~keesj/mmbase-taglib/tlddoc/index.html > taglib validation: > http://keesj.mmapps.net/~keesj/mmbase-taglib/taglibvalidation.html These are really nice. Hmm, we have a problem in org.mmbase.bridge.jsp.taglib.functions.ListFunctionTag. > checkstyle report(handy for cleaning project?) > http://keesj.mmapps.net/~keesj/mmbase-taglib/checkstyle-report.html A long time ago I suggested to do this style cleanup. Since that time I have become much more practical and dropped my code style idealism. I replaced it with my idealism for code standards (things pmd checks). If I can read it in one pass and understand what it does then it is ok for me. It is nice to see with this report how our styles differ. > http://keesj.mmapps.net/~keesj/mmbase-core/ > interesting reports: > junit > http://keesj.mmapps.net/~keesj/mmbase-core/junit-report.html Hmm that is not bad: Success rate 98.95%. :-) Last week on irc I mentioned that I am using maven for the first time in a big project and liked the way maven does its trick. The codebase I am currently working on contains 2 portals. Both portals use the same backend systems (Mmbase is one of them) and use the same services. We decided to switch over to maven from the old custom build tool, because the old tool wasn't flexible enough to support multiple projects on the same codebase. In the next couple of months we have about 4 projects which require code changes and releases to production. We decided to use the HEAD as our stable release branch and develop the new projects on other branches. The HEAD is now always available to release to production if an major issue arises or small (fast) change request should be applied. The projects don't have to worry about breaking the release. When a project finishes then the branch will be merged back to the HEAD. Now how did maven helped to improve the build process? In the old build tool we had massive amounts of modules with small functionality to share between the 2 portals. You had to build it in the right order to get it up and running. We had to explain the naming conventions and versioning of modules everytime a new person started working on the code. Maven defines dependencies and uses (sub)projects to create the final build artifact (jar/war/ear/tar/zip). Maven determines in which order (sub)projects should be build. Dependencies are retrieved from the local or remote repository. If you don't require the source code to build your (sub)project then you can use the artifact which is deployed by someone else in the remote repository. We defined a base project file where most of the settings are stored. Every (sub)project can overrule the base project. Our current maven layout looks like this. The names in capitals are the subprojects. Maven | project.xml | project.properties | build.properties (developers system paths/settings) | UTIL | TEST (some testing utils) | SERVICES | INTERFACES | IMPLEMENTATIONS | IMPLEMENTATION-EJBS | MOCK (mockobjects for the interfaces) | RESOURCES | PORTAL-WEB } EAR | WAR | PORTLETS | RESOURCES | WEBSERVER | WLDOMAIN | PORTAL-MOB } EAR | WAR | PORTLETS | RESOURCES | WEBSERVER | WLDOMAIN If we want a full build then we can execute on the top level "maven multiproject:install". Developers who are working only on portal-web can run the same goal on the subproject. We didn't have to write a huge ant script to create an ear file. Maven expects files to be in certain directories inside the project. You can overrule the default directories, but we got into trouble with a couple of plugins. I am happy with the way the build works, but maven can also generate the meta-files for different ide's. Some of us use eclipse and others use IntelliJ. If we change the maven configuration then it is a very easier for all of us to regenerate the meta-files. In the past everyone had to manually change the ide. Our systemadmin is very happy that he can generate the auto-build config files with maven. Another nice bonus of maven is to generate a site with reports about your codebase. There are hundreds