incubator-cloudstack-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Olivier Lamy <ol...@apache.org>
Subject Re: maven: latest patches and how to setup Eclipse/M2E/Jetty
Date Wed, 29 Aug 2012 16:59:00 GMT
2012/8/29 Olivier Lamy <olamy@apache.org>:
> 2012/8/29 Darren Shepherd <darren@godaddy.com>:
>> Olivier,
>>
>> You added the client module to the main pom.xml, but that break the
>> profiles for the build.  I created that pom mainly for the jetty:run,
>> but it depends on all the non-oss stuff and doesn't respect the profiles
>> to not depend on them when the profiles aren't activated.  While it
>> would be great to have the client pom switch its deps based on the
>> profiles, it doesn't matter because at runtime because the
>> components.xml for CS refers to all the non-oss stuff.
>>
>> So I purposely left the client module out of the main build for two
>> reasons.
>>
>> 1) It doesn't respect the profiles
> Good reason. I will check that.
Fixed with README updated
You can now run from the top: mvn tomcat7:run -pl :cloud-client-ui -am
-Pclient -Dnonoss
And hit your browser at http://localhost:8080/cloud-client-ui/

If you want to use an ice debugger replace mvn with mvnDebug (debug
port is 8000)

BTW this need a mysql started locally
I just wonder if you have think about running that with an embeded db
(derby or hsql etc)
Same for unit tests.
?

>> 2) "mvn -Dnonoss -am -pl client jetty:run" doesn't seem to work.  You
>> have to do
>>   "mvn -Dnonoss install && cd client && mvn jetty:run" for some reason.
>> I've never gotten the jetty plugin to work right with multi-modules, I
>> always seem to need to run it as a standalone build.
>
> Maybe but tomcat7:run works great with multi modules :-)
>
>
>>
>>
>> Darren
>>
>>
>>
>>
>>> -------- Original Message --------
>>> Subject: Re: maven: latest patches and how to setup Eclipse/M2E/Jetty
>>> From: Olivier Lamy <olamy@apache.org>
>>> Date: Tue, August 28, 2012 3:10 pm
>>> To: cloudstack-dev@incubator.apache.org
>>>
>>>
>>> merged.
>>> Added configuration for using tomcat maven plugin too.
>>> from README.md:
>>>
>>> to run webapp client:
>>> mvn org.apache.tomcat.maven:tomcat7-maven-plugin:2.0-beta-1:run -pl
>>> :cloud-client-ui -am
>>> then hit: http://localhost:8080/cloud-client-ui/
>>> or add in your ~/.m2/settings.xml
>>>   <pluginGroups>
>>>     <pluginGroup>org.apache.tomcat.maven</pluginGroup>
>>>   </pluginGroups>
>>> and save your fingers with mvn tomcat7:run -pl :cloud-client-ui -am
>>>
>>>
>>> 2012/8/28 Olivier Lamy <olamy@apache.org>:
>>> > Hi,
>>> > I will take care of that.
>>> >
>>> > 2012/8/28 Darren Shepherd <darren@godaddy.com>:
>>> >>
>>> >> For whatever reason, my patches on review board never seem to work.
 I
>>> >> just do "git format-patch --stdout origin/master" but then review board
>>> >> just throws an error when I upload the patch.  Regardless, can a
>>> >> committer pull the branch "maven-final" from
>>> >> https://github.com/ibuildthecloud/incubator-cloudstack.git and merge
to
>>> >> master?
>>> >>
>>> >> Included in the branch is the following:
>>> >>
>>> >>
>>> >> * Add resources to jars - There was a bunch of random files like
>>> >> keystores and such that were missing from the maven built jars
>>> >>
>>> >> * Added profiles for non-oss stuff - The following maven profiles are
>>> >> available to build the non-oss stuff: kvm, f5, netscaler, srx, netapp,
>>> >> vmware.  To include those components in the build just put
>>> >> "-Pvmware,kvm" or whatever component you want.  You can also do "mvn
>>> >> -Dnonoss=true" to include all of them.
>>> >>
>>> >> * Added deps/install-non-oss.sh - This script will install the nonoss
>>> >> jars into your local repo so that you don't have to use my private repo
>>> >> anymore
>>> >>
>>> >> * jetty:run support and a corresponding Eclipse launch config - This
>>> >> feature is really, really convenient for development.  Refer to below
>>> >> for more info.
>>> >>
>>> >>
>>> >> If you want to setup your development environment to be based on Eclipse
>>> >> and Maven and not the ant stuff then do the following (after you have
>>> >> pulled my changes):
>>> >>
>>> >> 1. If you have existing Eclipse projects, delete them all.
>>> >> 2. Delete all .classpath, .project, and .settings files (ie "find .
>>> >> -name .classpath -o -name .project -o -name .settings -exec rm -rf {}
\;
>>> >> -print" )
>>> >> 3. Install M2E Eclipse.  If your running Indigo or Juno M2E is an
>>> >> official Eclipse foundation project.  If your running Helios or older
>>> >> its a separate plugin that google knows the location of (but honestly
>>> >> just upgrade to Indigo.  Not Juno, I've found it to be really slow).
 So
>>> >> in Indigo/Juno just go to Help->Install New Software and put m2e
in the
>>> >> filter and you'll find it.
>>> >> 4. Go to File->Import and then Import Existing *Maven* Project. 
Select
>>> >> the root of the git repo and it will find a bunch of projects.  Import
>>> >> and then let maven download the internet and compile everything.  First
>>> >> run will be very slow, but then fast thereafter.
>>> >>
>>> >> You should now have all your compiling cloudstack projects.  If you
get
>>> >> issues regarding compiling the vmware, f5, then run
>>> >> deps/install-non-oss.sh to install the non-oss stuff.  Now the awesome
>>> >> part (assuming the previous steps worked).
>>> >>
>>> >> 5. Go back to File->Import, Import Existing *Maven* Project and select
>>> >> the {git.root}/client folder and import.
>>> >> 6. Go to Run->Debug Configurations... on the left you should see
Maven
>>> >> Build-> cloudstack-ui.  Click that and magic will ensue.  That will
run
>>> >> cloudstack in a jetty instance which should be accessible at
>>> >> http://localhost:8080/client.  So now you can just edit code and click
>>> >> run and it will launch it in Eclipse with debugging and all the
>>> >> hotswapping magic the JVM provides.  It assumes your DB is at localhost.
>>> >>  If your DB is elsewhere, then edit ${git.root}/build/replace.properties
>>> >> appropriately.
>>> >>
>>> >> Adios,
>>> >> Darren
>>> >>
>>> >>
>>> >>
>>> >>
>>> >>
>>> >>
>>> >>
>>> >
>>> >
>>> >
>>> > --
>>> > Olivier Lamy
>>> > Talend: http://coders.talend.com
>>> > http://twitter.com/olamy | http://linkedin.com/in/olamy
>>>
>>>
>>>
>>> --
>>> Olivier Lamy
>>> Talend: http://coders.talend.com
>>> http://twitter.com/olamy | http://linkedin.com/in/olamy
>
>
>
> --
> Olivier Lamy
> Talend: http://coders.talend.com
> http://twitter.com/olamy | http://linkedin.com/in/olamy



-- 
Olivier Lamy
Talend: http://coders.talend.com
http://twitter.com/olamy | http://linkedin.com/in/olamy

Mime
View raw message