openjpa-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Michael Dick <michael.d.d...@gmail.com>
Subject Re: Building in Eclipse
Date Fri, 05 Jun 2009 18:04:20 GMT
On Fri, Jun 5, 2009 at 12:02 PM, srini.krish <srinivasan.krish@gmail.com>wrote:

>
> Hi,
>  I tried setting up with eclipse and was successful too.. :)
> I exactly followed this link given by Michael
>
> [1]
>
> http://cwiki.apache.org/confluence/display/openjpa/Building#Building-Eclipse
>
> But there were a couple of points that were not mentioned..
>
> 1. M2_REPO - variable need to be created in eclipse which points to the
> local repository.


Thanks for pointing this out. I've been adding the variable manually for a
long time. The eclipse plugin should do it for you if you run :
$ mvn eclipse:configur-workspace -Dworkspace=${path to your eclipse
workspace}

I haven't tested it yet though, but I can give it a try tonight and add to
the wiki.

2. Under OpenJPA-kernal, the jjtree and javacc folders were added to
> exclusion filters.. Instead I added them to my source folders..
>

Thanks again. For trunk you should only need javacc (at least that works for
me). For older branches I believe you need them both.

I didnt understand why they were added to exclusion fileset.. is there any
> harm in having them under source folder?
>

No harm at all. Includes + excludes + eclipse:eclipse are a bit ticklish.
Glad you got it up and running.

-mike


> Thanks and Regards,
> -Srini
>
>
>
> Alan Raison wrote:
> >
> > Thanks all, I've got it working now :)
> >
> > Alan
> >
> >
> > -----Original Message-----
> > From: Michael Dick [mailto:michael.d.dick@gmail.com]
> > Sent: 18 May 2009 22:45
> > To: dev@openjpa.apache.org
> > Subject: Re: Building in Eclipse
> >
> > I think this is a variation on the "one big project" approach that some
> > people seem to like. I prefer to build each module as a separate
> > compilable
> > unit (ie the way maven does). The benefit is that when I break access
> > rules
> > (ie try to reference something from openjpa-jdbc in openjpa-kernel) my
> > eclipse build failes before I do a real maven build..
> >
> > It's all personal preference though and YMMV.. IDEA and NetBeans have
> > built
> > in maven support that (I'm told) works pretty nice. I can't give up
> > Eclipse's incremental compiles though.
> >
> > FWIW the steps for the multiple module approach are on our wiki at [1].
> If
> > you're willing to start from scratch that might be a good place to do.
> >
> > Donald's done a great job of updating that section of the wiki to keep it
> > up
> > to date (thanks Donald).
> >
> > [1]
> >
> http://cwiki.apache.org/confluence/display/openjpa/Building#Building-Eclipse
> >
> > Hope this helps,
> >
> > -mike
> >
> > On Mon, May 18, 2009 at 1:13 PM, Pinaki Poddar <ppoddar@apache.org>
> wrote:
> >
> >>
> >> Hi Alan,
> >>  I build/debug OpenJPA in Eclipse in a somewhat non-kosher way. The
> >> complexity arises because OpenJPA is a multi-module project and requires
> >> some javaCC generated source code.
> >>  So I am not prescribing the steps but purely describing what works for
> >> me.
> >>
> >>  1. checkout openjpa source code to say a directory X. You can check the
> >> project out from Eclipse itself too. Then ignore Step 3.
> >>  2. compile with maven -- this will create javacc generated source code
> >> which is required for next steps.
> >> Also it will fetch the dependent libraries in local maven repository.
> >>  3. create an Eclipse project with root directory X
> >>  4. add a whole bunch of 'source folders' to the Eclipse project (see
> >> attached .classpath and .project
> >> files). The output for each of these 'source folders' are different and
> >> should match maven target directory to keep maven and Eclipse build in
> >> synch.
> >>  5. Define a bunch of 'User Libraries' and attach the corresponding jar
> >> that Step 2 has placed in local maven repository.
> >>
> >>  Now the Eclipse project can be cleaned and built with 3 errors about
> >> javaCC generated code. I still could not get rid of them -- but they
> >> seemed
> >> to be harmless enough for me so far.
> >>
> >> =============== .project file ======================================
> >> <?xml version="1.0" encoding="UTF-8"?>
> >> <projectDescription>
> >>        <name>trunk</name>
> >>        <comment></comment>
> >>        <projects>
> >>        </projects>
> >>        <buildSpec>
> >>                <buildCommand>
> >>                        <name>org.eclipse.jdt.core.javabuilder</name>
> >>                        <arguments>
> >>                        </arguments>
> >>                </buildCommand>
> >>        </buildSpec>
> >>        <natures>
> >>                <nature>org.eclipse.jdt.core.javanature</nature>
> >>        </natures>
> >> </projectDescription>
> >>
> >> ============== .classpath file
> ==========================================
> >> <?xml version="1.0" encoding="UTF-8"?>
> >> <classpath>
> >>        <classpathentry kind="src" output="openjpa-lib/target/classes"
> >> path="openjpa-lib/src/main/java"/>
> >>        <classpathentry kind="src"
> >> output="openjpa-jdbc/target/test-classes"
> >> path="openjpa-jdbc/src/test/java"/>
> >>        <classpathentry kind="src" output="openjpa-kernel/target/classes"
> >> path="openjpa-kernel/target/generated-sources/jjtree"/>
> >>        <classpathentry kind="src" output="openjpa-kernel/target/classes"
> >> path="openjpa-kernel/target/generated-sources/javacc"/>
> >>        <classpathentry kind="src"
> >> output="openjpa-lib/target/test-classes"
> >> path="openjpa-lib/src/test/java">
> >>                <attributes>
> >>                        <attribute name="maven.type" value="test"/>
> >>                </attributes>
> >>        </classpathentry>
> >>        <classpathentry excluding="**" kind="src"
> >> output="openjpa-lib/src/main/resources"
> >> path="openjpa-lib/src/main/resources"/>
> >>        <classpathentry excluding="**" kind="src"
> output="openjpa-project"
> >> path="openjpa-project"/>
> >>        <classpathentry excluding="**" kind="src"
> >> output="openjpa-lib/src/test/resources"
> >> path="openjpa-lib/src/test/resources"/>
> >>        <classpathentry kind="src" output="openjpa-kernel/target/classes"
> >> path="openjpa-kernel/src/main/java"/>
> >>        <classpathentry kind="src"
> >> output="openjpa-kernel/target/test-classes"
> >> path="openjpa-kernel/src/test/java">
> >>                <attributes>
> >>                        <attribute name="maven.type" value="test"/>
> >>                </attributes>
> >>        </classpathentry>
> >>        <classpathentry excluding="**" kind="src"
> >> output="openjpa-kernel/src/main/resources"
> >> path="openjpa-kernel/src/main/resources"/>
> >>        <classpathentry kind="src" output="openjpa-jdbc/target/classes"
> >> path="openjpa-jdbc/src/main/java"/>
> >>        <classpathentry excluding="**" kind="src"
> >> output="openjpa-jdbc/src/main/resources"
> >> path="openjpa-jdbc/src/main/resources"/>
> >>        <classpathentry kind="src"
> >> output="openjpa-persistence/target/classes"
> >> path="openjpa-persistence/src/main/java"/>
> >>        <classpathentry kind="src"
> >> output="openjpa-persistence/target/test-classes"
> >> path="openjpa-persistence/src/test/java">
> >>                <attributes>
> >>                        <attribute name="maven.type" value="test"/>
> >>                </attributes>
> >>        </classpathentry>
> >>        <classpathentry excluding="**" kind="src"
> >> output="openjpa-persistence/target/classes"
> >> path="openjpa-persistence/src/main/resources"/>
> >>        <classpathentry kind="src"
> >> output="openjpa-persistence-jdbc/target/classes"
> >> path="openjpa-persistence-jdbc/src/main/java"/>
> >>        <classpathentry kind="src"
> >> output="openjpa-persistence-jdbc/target/test-classes"
> >> path="openjpa-persistence-jdbc/src/test/java">
> >>                <attributes>
> >>                        <attribute name="maven.type" value="test"/>
> >>                </attributes>
> >>        </classpathentry>
> >>        <classpathentry excluding="**" kind="src"
> >> output="openjpa-persistence-jdbc/src/main/resources"
> >> path="openjpa-persistence-jdbc/src/main/resources"/>
> >>        <classpathentry excluding="**" kind="src"
> >> output="openjpa-persistence-jdbc/src/test/resources"
> >> path="openjpa-persistence-jdbc/src/test/resources"/>
> >>        <classpathentry kind="src"
> >> output="openjpa-xmlstore/target/classes"
> >> path="openjpa-xmlstore/src/main/java"/>
> >>        <classpathentry kind="src" output="openjpa-slice/target/classes"
> >> path="openjpa-slice/src/main/java"/>
> >>        <classpathentry kind="src"
> >> output="openjpa-slice/target/test-classes"
> >> path="openjpa-slice/src/test/java">
> >>                <attributes>
> >>                        <attribute name="maven.type" value="test"/>
> >>                </attributes>
> >>        </classpathentry>
> >>        <classpathentry excluding="**" kind="src"
> >> output="openjpa-slice/src/main/resources"
> >> path="openjpa-slice/src/main/resources"/>
> >>        <classpathentry excluding="**" kind="src"
> >> output="openjpa-slice/src/test/resources"
> >> path="openjpa-slice/src/test/resources"/>
> >>        <classpathentry excluding="reversemapping/*.java" kind="src"
> >> output="openjpa-examples/target/classes"
> >> path="openjpa-examples/src/main/java"/>
> >>        <classpathentry kind="src"
> >> output="openjpa-examples/target/test-classes"
> >> path="openjpa-examples/src/test/java">
> >>                <attributes>
> >>                        <attribute name="maven.type" value="test"/>
> >>                </attributes>
> >>        </classpathentry>
> >>        <classpathentry exported="true" kind="con"
> >> path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
> >>        <classpathentry exported="true" kind="con"
> >> path="org.eclipse.jdt.junit.JUNIT_CONTAINER/3"/>
> >>        <classpathentry exported="true" kind="con"
> >> path="org.eclipse.jdt.USER_LIBRARY/APACHE_ANT"/>
> >>        <classpathentry exported="true" kind="con"
> >> path="org.eclipse.jdt.USER_LIBRARY/COMMONS_COLL"/>
> >>        <classpathentry exported="true" kind="con"
> >> path="org.eclipse.jdt.USER_LIBRARY/COMMONS_LANG"/>
> >>        <classpathentry exported="true" kind="con"
> >> path="org.eclipse.jdt.USER_LIBRARY/COMMONS_LOG"/>
> >>        <classpathentry exported="true" kind="con"
> >> path="org.eclipse.jdt.USER_LIBRARY/COMMONS_POOL"/>
> >>        <classpathentry exported="true" kind="con"
> >> path="org.eclipse.jdt.USER_LIBRARY/HSQLDB"/>
> >>        <classpathentry exported="true" kind="con"
> >> path="org.eclipse.jdt.USER_LIBRARY/JMS"/>
> >>        <classpathentry exported="true" kind="con"
> >> path="org.eclipse.jdt.USER_LIBRARY/JPA_2.0_PD"/>
> >>        <classpathentry exported="true" kind="con"
> >> path="org.eclipse.jdt.USER_LIBRARY/JTA"/>
> >>        <classpathentry exported="true" kind="con"
> >> path="org.eclipse.jdt.USER_LIBRARY/LOG4J"/>
> >>        <classpathentry exported="true" kind="con"
> >> path="org.eclipse.jdt.USER_LIBRARY/POSTGRES"/>
> >>        <classpathentry exported="true" kind="con"
> >> path="org.eclipse.jdt.USER_LIBRARY/REGEX"/>
> >>        <classpathentry exported="true" kind="con"
> >> path="org.eclipse.jdt.USER_LIBRARY/SERP_1.13.1"/>
> >>        <classpathentry exported="true" kind="con"
> >> path="org.eclipse.jdt.USER_LIBRARY/UOW"/>
> >>        <classpathentry kind="output" path="bin"/>
> >> </classpath>
> >>
> >>
> >>
> >>
> >> Alan Raison wrote:
> >> >
> >> > Hi
> >> >
> >> > Does anyone have any experience (preferably successful) of building
> >> > openjpa-kernel in Eclipse?
> >> >
> >> > I've found that checking out each sub-project from trunk usually works
> >> > fine when building against a released version (as then I can download
> >> > the pre-compiled openjpa-kernel from the maven repo) but this doesn't
> >> > work so well when working with trunk.
> >> >
> >> > Working from the command line is fine but a bit limited in Windows -
> >> > especially when trying to patch the source!
> >> >
> >> > My specific issue is that Eclipse complains of compile errors in the
> >> > (src/main/java/)org.apache.openjpa.kernel.jpql package as these files
> >> > depend on the jjtree sources.  If I add
> target/generated-sources/javacc
> >> > to the build path I get a name clash with the SimpleNode class in both
> >> > the src/main/java and target/generated-sources/javacc folders.  I also
> >> > tried adding the target/generated-sources/jjtree folder in place of
> the
> >> > target/generated-sources/javacc folder but this didn't work either.
> >> >
> >> > Sorry if I am being thick with this.  I need my IDE!! ;)
> >> >
> >> > Alan
> >> >
> >> >
> >> >
> >>
> >>
> >> -----
> >> Pinaki Poddar                      http://ppoddar.blogspot.com/
> >>
> >> http://www.linkedin.com/in/pinakipoddar
> >> OpenJPA PMC Member/Committer
> >> JPA Expert Group Member
> >> --
> >> View this message in context:
> >> http://n2.nabble.com/Building-in-Eclipse-tp2934132p2934719.html
> >> Sent from the OpenJPA Developers mailing list archive at Nabble.com.
> >>
> >>
> >
> >
>
> --
> View this message in context:
> http://n2.nabble.com/Building-in-Eclipse-tp2934132p3031676.html
> Sent from the OpenJPA Developers mailing list archive at Nabble.com.
>
>

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message