Hi all, This is not a XWiki issue, but following the discussion about the Maven version to standardize on XWiki build I am trying to configure a developer environment in a MacBook Pro running Mac OS X 10.5.5. Your help will be really welcome. Thanks! Mac OS X 10.5.x includes Maven 2.0.6 in its base installation. Thus, mvn --version gives... GMXUX-Ricardo-Rodriguez:~ rrodriguez$ mvn --version Maven version: 2.0.6 I've tried to follow the installation instructions in Maven support site to install both (or at least one of them) Maven 2.0.9 and/or Maven 2.1.0 M1 but I am falling at setting the correct environment system wide. It works fine if I export each concerned variable in a given shell, but this only works for this and only this shell window... sh-3.2# export M2_HOME=/usr/local/apache-maven/apache-maven-2.0.9 sh-3.2# export M2=/usr/local/apache-maven/apache-maven-2.0.9/bin sh-3.2# echo $PATH /usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin sh-3.2# export PATH=$PATH:$M2 sh-3.2# echo $PATH /usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/usr/local/apache-maven/apache-maven-2.0.9/bin sh-3.2# mvn --version Maven version: 2.0.9 Java version: 1.5.0_13 OS name: "mac os x" version: "10.5.5" arch: "i386" Family: "unix" sh-3.2# echo $PATH /usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/usr/local/apache-maven/apache-maven-2.0.9/bin sh-3.2# Please, what method do you use to set M2, M2_HOME and modify PATH to include M2? Is it possible to set them system wide or at least user wide? I've tried a number of methods without success. Thanks for your help, Ricardo -- Ricardo Rodríguez Your EPEC Network ICT Team
[Ricardo Rodriguez] Your EPEC Network ICT Team wrote:
Hi all,
This is not a XWiki issue, but following the discussion about the Maven version to standardize on XWiki build I am trying to configure a developer environment in a MacBook Pro running Mac OS X 10.5.5. Your help will be really welcome. Thanks!
Mac OS X 10.5.x includes Maven 2.0.6 in its base installation. Thus, mvn --version gives...
GMXUX-Ricardo-Rodriguez:~ rrodriguez$ mvn --version Maven version: 2.0.6
I've tried to follow the installation instructions in Maven support site to install both (or at least one of them) Maven 2.0.9 and/or Maven 2.1.0 M1 but I am falling at setting the correct environment system wide. It works fine if I export each concerned variable in a given shell, but this only works for this and only this shell window...
sh-3.2# export M2_HOME=/usr/local/apache-maven/apache-maven-2.0.9 sh-3.2# export M2=/usr/local/apache-maven/apache-maven-2.0.9/bin sh-3.2# echo $PATH /usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin sh-3.2# export PATH=$PATH:$M2 sh-3.2# echo $PATH /usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/usr/local/apache-maven/apache-maven-2.0.9/bin sh-3.2# mvn --version Maven version: 2.0.9 Java version: 1.5.0_13 OS name: "mac os x" version: "10.5.5" arch: "i386" Family: "unix" sh-3.2# echo $PATH /usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/usr/local/apache-maven/apache-maven-2.0.9/bin sh-3.2#
Please, what method do you use to set M2, M2_HOME and modify PATH to include M2? Is it possible to set them system wide or at least user wide? I've tried a number of methods without success.
You can try putting these variables in one of the files (not sure which are on a mac, I'm on linux now): /etc/bash/bashrc /etc/profile ~/.bash_profile ~/.bashrc You will probably have to reboot to see if it works as a default, or at least logout/login. -- Sergiu Dumitriu http://purl.org/net/sergiu/
Ricardo, Just do a wrapper shell script, call it mvn and put it in your path befure /usr/bin/mvn. I put this in the bin of our general utilities, which is put in path by my ~/.bash_profile before the others. Hence i obtain the following which you could easily change: $ cat `which mvn` #!/bin/sh MAVEN_OPTS=-Xmx600m export MAVEN_OPTS /project/activemath/javalibs/maven/apache-maven-2.0.9/bin/mvn "$@" (the directory there is where I installed it... feel free to change it!) it's running very fine on a MacBook Pro. It's funny, I hadn't notice that Apple ships maven which is quite honourable of them. paul Le 21-sept.-08 à 23:13, [Ricardo Rodriguez] Your EPEC Network ICT Team a écrit :
Hi all,
This is not a XWiki issue, but following the discussion about the Maven version to standardize on XWiki build I am trying to configure a developer environment in a MacBook Pro running Mac OS X 10.5.5. Your help will be really welcome. Thanks!
Mac OS X 10.5.x includes Maven 2.0.6 in its base installation. Thus, mvn --version gives...
GMXUX-Ricardo-Rodriguez:~ rrodriguez$ mvn --version Maven version: 2.0.6
I've tried to follow the installation instructions in Maven support site to install both (or at least one of them) Maven 2.0.9 and/or Maven 2.1.0 M1 but I am falling at setting the correct environment system wide. It works fine if I export each concerned variable in a given shell, but this only works for this and only this shell window...
sh-3.2# export M2_HOME=/usr/local/apache-maven/apache-maven-2.0.9 sh-3.2# export M2=/usr/local/apache-maven/apache-maven-2.0.9/bin sh-3.2# echo $PATH /usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin sh-3.2# export PATH=$PATH:$M2 sh-3.2# echo $PATH /usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/usr/local/ apache-maven/apache-maven-2.0.9/bin sh-3.2# mvn --version Maven version: 2.0.9 Java version: 1.5.0_13 OS name: "mac os x" version: "10.5.5" arch: "i386" Family: "unix" sh-3.2# echo $PATH /usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/usr/local/ apache-maven/apache-maven-2.0.9/bin sh-3.2#
Please, what method do you use to set M2, M2_HOME and modify PATH to include M2? Is it possible to set them system wide or at least user wide? I've tried a number of methods without success.
Thanks for your help,
Ricardo
-- Ricardo Rodríguez Your EPEC Network ICT Team
_______________________________________________ devs mailing list [email protected] http://lists.xwiki.org/mailman/listinfo/devs
Hi Paul, Sergiu, Paul Libbrecht wrote:
Ricardo,
Just do a wrapper shell script, call it mvn and put it in your path befure /usr/bin/mvn. I put this in the bin of our general utilities, which is put in path by my ~/.bash_profile before the others.
Hence i obtain the following which you could easily change:
$ cat `which mvn` #!/bin/sh
MAVEN_OPTS=-Xmx600m export MAVEN_OPTS
/project/activemath/javalibs/maven/apache-maven-2.0.9/bin/mvn "$@"
Putting concerned variables in ~/.bash_profile did the trick. So, please, what is the advantage of using a wrapper shell script if I can pass any and all required variables with ~/.bash_profile to the shell? Thanks! Cheers, Ricardo -- Ricardo Rodríguez Your EPEC Network ICT Team
My advantage was to change the mvn command deciding on which place to use. You are right however that these methods overlap in the role of defining variables! In a multi-user-setup, the wrapper script is also more important. paul Le 24-sept.-08 à 00:51, [Ricardo Rodriguez] Your EPEC Network ICT Team a écrit :
Putting concerned variables in ~/.bash_profile did the trick. So, please, what is the advantage of using a wrapper shell script if I can pass any and all required variables with ~/.bash_profile to the shell? Thanks!
Thanks, Paul, Paul Libbrecht wrote:
My advantage was to change the mvn command deciding on which place to use. You are right however that these methods overlap in the role of defining variables!
In a multi-user-setup, the wrapper script is also more important.
Sorry for insist on this but, please, why is the wrapper script more important in a multiuser setup? .bash_profile is setup in a per user basis, so could it control Maven settings for each user using a given box for developing? Thanks! Greetings, Ricardo -- Ricardo Rodríguez Your EPEC Network ICT Team
[Ricardo Rodriguez] Your EPEC Network ICT Team wrote:
Thanks, Paul,
Paul Libbrecht wrote:
My advantage was to change the mvn command deciding on which place to use. You are right however that these methods overlap in the role of defining variables!
In a multi-user-setup, the wrapper script is also more important.
Sorry for insist on this but, please, why is the wrapper script more important in a multiuser setup? .bash_profile is setup in a per user basis, so could it control Maven settings for each user using a given box for developing? Thanks!
The wrapper script is somehow better in a multi-user environment because it is common for all users, so they don't have to modify their own ~/.bash_profile. To sum up: ~/.bash_profile is good because it lets a user define his own settings A common script is good because it lets all users on a system have the same settings for maven, which is good if they ALL need the same settings. Using some global initialization file, like /etc/bash/bashrc has the same advantages as the common script file, but also has the advantage that it sets the settings only once, and not every time mvn is executed. -- Sergiu Dumitriu http://purl.org/net/sergiu/
Le 24-sept.-08 à 02:04, Sergiu Dumitriu a écrit :
The wrapper script is somehow better in a multi-user environment because it is common for all users, so they don't have to modify their own ~/.bash_profile. To sum up:
~/.bash_profile is good because it lets a user define his own settings
A common script is good because it lets all users on a system have the same settings for maven, which is good if they ALL need the same settings.
I agree. Basically upgrading went as follows: - install and put a wrapper script mvn-2.9 - test, let other tests using that command instead (from time to time) - when decided to upgrade all replace mvn by a symbolic link to mvn-2.9
Using some global initialization file, like /etc/bash/bashrc has the same advantages as the common script file, but also has the advantage that it sets the settings only once, and not every time mvn is executed.
There's no performance penalty in setting up a few variables! really none. paul
Paul Libbrecht wrote:
Le 24-sept.-08 à 02:04, Sergiu Dumitriu a écrit :
The wrapper script is somehow better in a multi-user environment because it is common for all users, so they don't have to modify their own ~/.bash_profile. To sum up:
~/.bash_profile is good because it lets a user define his own settings
A common script is good because it lets all users on a system have the same settings for maven, which is good if they ALL need the same settings.
I agree. Basically upgrading went as follows: - install and put a wrapper script mvn-2.9 - test, let other tests using that command instead (from time to time) - when decided to upgrade all replace mvn by a symbolic link to mvn-2.9
Using some global initialization file, like /etc/bash/bashrc has the same advantages as the common script file, but also has the advantage that it sets the settings only once, and not every time mvn is executed.
There's no performance penalty in setting up a few variables! really none.
Not really none, a few nano seconds... Certainly much less that a hundredth of a second. -- Sergiu Dumitriu http://purl.org/net/sergiu/
Thanks both! This step is clear for me now at least in a MacBook Pro box. Next station: check out the software and try to build it. I am writing down the steps toward a developing environment in a MacBook Pro in a XWiki page here... http://xepecnet.environmentalchange.net/xwiki/bin/view/ICT/DevelopingEnviron... If you consider it suitable for dev.xwiki.org, let me know where could I create it and I will move it there. Perhaps as a simple "case study", it is not worth to move it out of EPEC Network. Cheers, Ricardo Paul Libbrecht wrote:
Le 24-sept.-08 à 10:26, Sergiu Dumitriu a écrit :
There's no performance penalty in setting up a few variables! really none.
Not really none, a few nano seconds... Certainly much less that a hundredth of a second.
compared to a mvn startup?
paul ------------------------------------------------------------------------
_______________________________________________ devs mailing list [email protected] http://lists.xwiki.org/mailman/listinfo/devs
-- Ricardo Rodríguez Your EPEC Network ICT Team
Hi Ricardo, On Sep 25, 2008, at 8:13 PM, [Ricardo Rodriguez] Your EPEC Network ICT Team wrote:
Thanks both! This step is clear for me now at least in a MacBook Pro box. Next station: check out the software and try to build it.
I am writing down the steps toward a developing environment in a MacBook Pro in a XWiki page here...
http://xepecnet.environmentalchange.net/xwiki/bin/view/ICT/DevelopingEnviron...
Sounds good but why don't you link to the maven book for installing maven for example: http://www.sonatype.com/book/reference/public-book.html ? This would allow not to repeat the information. I think a tutorial like this is very worthwhile. I'd personally not put any information outside of xwiki and instead provide links since otherwise you'll have to explain a lot for all possible situations + update if frequently when one of those external tool change. WDYT? Note that the difference between set up on Mac OSX, Windows or Linux is very slim IMO. For all of them you can (for example) simply unzip tomcat and run startup.bat or startup.sh. Thanks -Vincent
If you consider it suitable for dev.xwiki.org, let me know where could I create it and I will move it there. Perhaps as a simple "case study", it is not worth to move it out of EPEC Network.
Cheers,
Ricardo
Paul Libbrecht wrote:
Le 24-sept.-08 à 10:26, Sergiu Dumitriu a écrit :
There's no performance penalty in setting up a few variables! really none.
Not really none, a few nano seconds... Certainly much less that a hundredth of a second.
compared to a mvn startup?
paul ------------------------------------------------------------------------
_______________________________________________ devs mailing list [email protected] http://lists.xwiki.org/mailman/listinfo/devs
-- Ricardo Rodríguez Your EPEC Network ICT Team
_______________________________________________ devs mailing list [email protected] http://lists.xwiki.org/mailman/listinfo/devs
Hi! Vincent Massol wrote:
Hi Ricardo,
On Sep 25, 2008, at 8:13 PM, [Ricardo Rodriguez] Your EPEC Network ICT Team wrote:
Thanks both! This step is clear for me now at least in a MacBook Pro box. Next station: check out the software and try to build it.
I am writing down the steps toward a developing environment in a MacBook Pro in a XWiki page here...
http://xepecnet.environmentalchange.net/xwiki/bin/view/ICT/DevelopingEnviron...
Sounds good but why don't you link to the maven book for installing maven for example: http://www.sonatype.com/book/reference/public-book.html ?
This would allow not to repeat the information.
Simply because I'd not reached this site yet! Of course this is the place for detailed instructions and, if anybody find anything missing or wrong, it must be corrected there. Thanks! Don't you think it is worth a link to this book about maven in http://dev.xwiki.org/xwiki/bin/view/Community/Building#HInstallingMaven or any other location in this page?
I think a tutorial like this is very worthwhile. I'd personally not put any information outside of xwiki and instead provide links since otherwise you'll have to explain a lot for all possible situations + update if frequently when one of those external tool change.
WDYT?
I think that the only merit of this simple tutorial is to create a new installation workflow focused on creating a developing environment. Sincerely I think that it won't be frequent that anybody starting developing in XWiki has not already installed some or all of the required pieces before reaching this page :-)
Note that the difference between set up on Mac OSX, Windows or Linux is very slim IMO. For all of them you can (for example) simply unzip tomcat and run startup.bat or startup.sh.
This could be possibly truth for experienced people. But, for instance, to set up a Tomcat daemon in Mac OS X requires some extra work. See... http://www.malisphoto.com/tips/tomcatonosx.html?#Anchor-JSVC In Windows, the Tomcat installer does this work for the user. But this information would be better entered in... http://platform.xwiki.org/xwiki/bin/view/AdminGuide/InstallationTomcat Summing up, my draft will remain in our xwiki just for our reference. It could be worth to add this two links (Maven: The Definitive Guide and Installing Apache Tomcat 6 on Mac OS X Leopard) in the more suitable place. WDYT? Thanks! -- Ricardo Rodríguez Your EPEC Network ICT Team
On Sep 25, 2008, at 11:47 PM, [Ricardo Rodriguez] Your EPEC Network ICT Team wrote:
Hi!
Vincent Massol wrote:
Hi Ricardo,
On Sep 25, 2008, at 8:13 PM, [Ricardo Rodriguez] Your EPEC Network ICT Team wrote:
Thanks both! This step is clear for me now at least in a MacBook Pro box. Next station: check out the software and try to build it.
I am writing down the steps toward a developing environment in a MacBook Pro in a XWiki page here...
http://xepecnet.environmentalchange.net/xwiki/bin/view/ICT/DevelopingEnviron...
Sounds good but why don't you link to the maven book for installing maven for example: http://www.sonatype.com/book/reference/public-book.html ?
This would allow not to repeat the information.
Simply because I'd not reached this site yet! Of course this is the place for detailed instructions and, if anybody find anything missing or wrong, it must be corrected there. Thanks!
Don't you think it is worth a link to this book about maven in http://dev.xwiki.org/xwiki/bin/view/Community/ Building#HInstallingMaven or any other location in this page?
Done.
I think a tutorial like this is very worthwhile. I'd personally not put any information outside of xwiki and instead provide links since otherwise you'll have to explain a lot for all possible situations + update if frequently when one of those external tool change.
WDYT?
I think that the only merit of this simple tutorial is to create a new installation workflow focused on creating a developing environment. Sincerely I think that it won't be frequent that anybody starting developing in XWiki has not already installed some or all of the required pieces before reaching this page :-)
Note that the difference between set up on Mac OSX, Windows or Linux is very slim IMO. For all of them you can (for example) simply unzip tomcat and run startup.bat or startup.sh.
This could be possibly truth for experienced people. But, for instance, to set up a Tomcat daemon in Mac OS X requires some extra work. See...
http://www.malisphoto.com/tips/tomcatonosx.html?#Anchor-JSVC
In Windows, the Tomcat installer does this work for the user. But this information would be better entered in...
Why would you want to do this for developing XWiki code? :)
http://platform.xwiki.org/xwiki/bin/view/AdminGuide/InstallationTomcat
Sure but it's almost already there I think since we link to http://tomcat.apache.org which should be the place where all information about Tomcat should be found. However feel free to add as many links as you want there, the more the merrier.
Summing up, my draft will remain in our xwiki just for our reference. It could be worth to add this two links (Maven: The Definitive Guide and Installing Apache Tomcat 6 on Mac OS X Leopard) in the more suitable place.
Agreed. Go ahead! Thanks -Vincent
Hi! Vincent Massol wrote:
This could be possibly truth for experienced people. But, for instance, to set up a Tomcat daemon in Mac OS X requires some extra work. See...
http://www.malisphoto.com/tips/tomcatonosx.html?#Anchor-JSVC
In Windows, the Tomcat installer does this work for the user. But this information would be better entered in...
Why would you want to do this for developing XWiki code? :)
Great question! I am using Tomcat here for serving a number of applications. I found it suitable to get it easily running each time I turn on the box. And at the same time, I am using this method to get servlets running in other Mac boxes not too busy. I can forget about users switching off/on boxes, electric power shortcuts,... of course it will be better to use some reliable servers... any day!! :-)
http://platform.xwiki.org/xwiki/bin/view/AdminGuide/InstallationTomcat
Sure but it's almost already there I think since we link to http://tomcat.apache.org which should be the place where all information about Tomcat should be found.
However feel free to add as many links as you want there, the more the merrier.
I will add them!
Summing up, my draft will remain in our xwiki just for our reference. It could be worth to add this two links (Maven: The Definitive Guide and Installing Apache Tomcat 6 on Mac OS X Leopard) in the more suitable place.
Agreed. Go ahead!
I will be there! Cheers, Ricardo -- Ricardo Rodríguez Your EPEC Network ICT Team
[Ricardo Rodriguez] Your EPEC Network ICT Team wrote:
Thanks both! This step is clear for me now at least in a MacBook Pro box. Next station: check out the software and try to build it.
I am writing down the steps toward a developing environment in a MacBook Pro in a XWiki page here...
http://xepecnet.environmentalchange.net/xwiki/bin/view/ICT/DevelopingEnviron...
I think there are a few problems in the environment variables, it should be: export M2=/usr/local/apache-maven/apache-maven-2.1.0-M1/bin (note the /bin at the end, in there is the mvn executable) export PATH=$M2:$PATH ($M2 should be before $PATH, so that mvn is first searched in there, and then in other directories; this ensures that THIS version of maven is executed, and not the system-wide one) export MAVEN_OPTS="-Xmx600m -Xms600m" I thinx Xms is not a good idea to set to such a large value, as it will always allocate this much memory, even if it isn't needed.
If you consider it suitable for dev.xwiki.org, let me know where could I create it and I will move it there. Perhaps as a simple "case study", it is not worth to move it out of EPEC Network.
Cheers,
Ricardo
Paul Libbrecht wrote:
Le 24-sept.-08 à 10:26, Sergiu Dumitriu a écrit :
There's no performance penalty in setting up a few variables! really none. Not really none, a few nano seconds... Certainly much less that a hundredth of a second. compared to a mvn startup?
paul
-- Sergiu Dumitriu http://purl.org/net/sergiu/
Thanks, Sergiu, Sergiu Dumitriu wrote
export MAVEN_OPTS="-Xmx600m -Xms600m" I thinx Xms is not a good idea to set to such a large value, as it will always allocate this much memory, even if it isn't needed.
Please, what is the value we must set for -Xms? Or no value at all? Best regards, Ricardo -- Ricardo Rodríguez Your EPEC Network ICT Team
[Ricardo Rodriguez] Your EPEC Network ICT Team wrote:
Thanks, Sergiu,
Sergiu Dumitriu wrote
export MAVEN_OPTS="-Xmx600m -Xms600m" I thinx Xms is not a good idea to set to such a large value, as it will always allocate this much memory, even if it isn't needed.
Please, what is the value we must set for -Xms? Or no value at all?
Works well with no value at all. This is the initial size of the VM, which can grow as needed up to the maximum size (Xmx). -- Sergiu Dumitriu http://purl.org/net/sergiu/
Thanks, Sergiu, Sergiu Dumitriu wrote:
Works well with no value at all. This is the initial size of the VM, which can grow as needed up to the maximum size (Xmx).
http://xepecnet.environmentalchange.net/xwiki/bin/view/ICT/DevelopingEnviron...
Cheers, Ricardo -- Ricardo Rodríguez Your EPEC Network ICT Team
participants (4)
-
[Ricardo Rodriguez] Your EPEC Network ICT Team -
Paul Libbrecht -
Sergiu Dumitriu -
Vincent Massol