dev@glassfish.java.net

Re: Compiling Glassfish in Eclipse

From: Jim Driscoll <Jim.Driscoll_at_Sun.COM>
Date: Wed, 30 Aug 2006 08:56:44 -0700

I haven't seen a reply to this - is Markus being helped?

Jim

Marina Vatkina wrote:
> Team,
>
> Is there anybody on the dev alias who can help Markus? :(
>
> thanks,
> -marina
>
> Dinesh Patil wrote On 08/22/06 17:45,:
>> this is failing in admin-gui/admin-jsf which uses Apt taskdef, that's
>> been added and executed using "exec"
>> <exec dir="." executable="${execute.ant}" failonerror="true">
>> <arg line="-f aptbuild.xml
>> -Dglassfish.home=${glassfish.home} -lib ${lib.dir}/ant-apt.jar compile" />
>> </exec>
>>
>> Anissa/Ken, do you know about this?
>>
>> [java] compile-java:
>> [java] [exec] Buildfile: aptbuild.xml
>> [java]
>> [java] [exec] BUILD FAILED
>> [java] [exec]
>> /home/markus/workspace/glassfish/admin-gui/admin-jsf/aptbuild.xml:6:
>> taskdef class org.apache.tools.ant.taskdefs.Apt cannot be found
>>
>> [java] /home/markus/workspace/glassfish/admin-gui/build.xml:48: The
>> following error occurred while executing this line:
>> [java]
>> /home/markus/workspace/glassfish/admin-gui/admin-jsf/build.xml:57: exec
>> returned: 1
>>
>> Marina Vatkina wrote:
>>
>>
>>> Uh-hoh. I missed the most important part! :(.
>>>
>>> Can somebody help Markus resolving the failure below?
>>>
>>> thanks,
>>> -marina
>>>
>>> Markus KARG wrote:
>>>
>>>
>>>> Marina,
>>>>
>>>> well, actually I didn't make it work, as you can read in that posting
>>>> quoted below...?!
>>>>
>>>> Markus
>>>>
>>>> Marina Vatkina wrote:
>>>>
>>>>
>>>>> Hi Markus,
>>>>>
>>>>> Thanks a lot for taking time to make it work *and* describing all the
>>>>> tips and issues.
>>>>>
>>>>> I'm resending to a wider audience, so that others can benefit from your
>>>>> experience, or share theirs, or help improve it.
>>>>>
>>>>> Best Regards,
>>>>> -marina
>>>>>
>>>>> Markus KARG wrote On 08/19/06 05:26,:
>>>>>
>>>>>
>>>>>
>>>>>> I took the time to remove all maybe "crashed" code and configurations
>>>>> >from my disc and started pulling Glassfish sources once more,
>>>>>> following
>>>>>> the instructions on this page:
>>>>>> https://glassfish.dev.java.net/public/BuildGlassFish.html.
>>>>>>
>>>>>> Since you certainly are interested in the results (as they might be
>>>>>> representative for a lot of potential contrubutors to the persistence
>>>>>> subproject), I will provide you a report of this final attempt in the
>>>>>> following. Maybe you can find the time to forward the single issues to
>>>>>> the persons that might change the current situation.
>>>>>>
>>>>>> Okay, first the short story: Still I am not able to build Glassfish
>>>>>> following the instructions found on the above web site. The error
>>>>>> message is:
>>>>>>
>>>>>> [java] compile-java:
>>>>>> [java] [exec] Buildfile: aptbuild.xml
>>>>>> [java]
>>>>>> [java] [exec] BUILD FAILED
>>>>>> [java] [exec]
>>>>>> /home/markus/workspace/glassfish/admin-gui/admin-jsf/aptbuild.xml:6:
>>>>>> taskdef class org.apache.tools.ant.taskdefs.Apt cannot be found
>>>>>> [java]
>>>>>> [java] [exec] Total time: 1 second
>>>>>> [java]
>>>>>> [java] BUILD FAILED
>>>>>> [java] /home/markus/workspace/glassfish/admin-gui/build.xml:48: The
>>>>>> following error occurred while executing this line:
>>>>>> [java]
>>>>>> /home/markus/workspace/glassfish/admin-gui/admin-jsf/build.xml:57:
>>>>>> exec
>>>>>> returned: 1
>>>>>> [java]
>>>>>> [java] Total time: 1 minute 18 seconds
>>>>>> [java] [ERROR] Java Result: 1
>>>>>>
>>>>>> BUILD FAILED
>>>>>> File...... /home/markus/workspace/glassfish/bootstrap/maven.xml
>>>>>> Element... maven:reactor
>>>>>> Line...... 153
>>>>>> Column.... 40
>>>>>> Unable to obtain goal [build-pe] --
>>>>>> /home/markus/workspace/glassfish/bootstrap/../../glassfish/bootstrap/maven.xml:476:28:
>>>>>>
>>>>>> <fail> No message
>>>>>> Total time: 92 minutes 54 seconds
>>>>>> Finished at: Sat Aug 19 14:21:10 CEST 2006
>>>>>>
>>>>>> And here is the long story...:
>>>>>>
>>>>>> (1) A contributor need to have cvs installed, while many users will no
>>>>>> more have this installed meanwhile. CVS silently became obsolete on
>>>>>> many
>>>>>> user's machines, since e. g. the world's largest open source
>>>>>> community,
>>>>>> "SourceForge", moved from CVS to SVN. Also many companies moved
>>>>> >from CVS
>>>>>> to SVN for their internal projects. In addition, OpenSUSE 10.1, one of
>>>>>> the most popular Linux distributions in Europe, is no more coming with
>>>>>> CVS clients installed but only with SVN clients by default. So users
>>>>>> have to search for CVS command line clients on their own in the www,
>>>>>> which is quite annoying. Using Eclipse as a CVS client is not working
>>>>>> also, since it just downloads the glassfish/bootstrap folder, but
>>>>>> Maven
>>>>>> in turn tries to find the CVS command line client to pull
>>>>>> dependencies,
>>>>>> which will certainly fail then (I think it is a drawback of Maven that
>>>>>> it depends on the CVS command line client instead of having its own
>>>>>> Java-based CVS support inside; SVN for example comes with a 100% pure
>>>>>> Java client, which is open source and could be part of the Maven
>>>>>> program
>>>>>> so there is no native code and such no installation of SVN needed
>>>>>> actually). Even if many CVS users won't accept it: SVN has overtaken
>>>>>> meanwhile and is the current standard. As a result of the installation
>>>>>> of CVS, you might run into a bug: CVS is not able to read the
>>>>>> /home/yourname/.cvspass file sometimes.
>>>>>>
>>>>>> The error message looks like this:
>>>>>>
>>>>>> cvs checkout: warning: failed to open /home/markus/.cvspass for
>>>>>> reading:
>>>>>> No such file or directory
>>>>>> Fatal error, aborting.
>>>>>>
>>>>>> To fix it, you need to logout (YES, logOUT! If you logIN it still will
>>>>>> not work!). I think this is a bug of CVS. So I would highly advise to
>>>>>> migrate Glassfish from CVS to SVN in the next months. Also you should
>>>>>> add my hint with the cvs logout to the "Getting Started" page as
>>>>>> "Tip (a)".
>>>>>>
>>>>>> There are some more tips one has to pay attention:
>>>>>>
>>>>>> Tip (b): Do not try to use Eclipse to pull the complete Glassfish
>>>>>> code.
>>>>>> After you waited for hours, you will remark that Glassfish is not one
>>>>>> project in Eclipse but you need to have one Eclipse project for each
>>>>>> subfolder of the glassfish CVS module. When you try to do that,
>>>>>> Eclipse
>>>>>> complains about this beeing impossible, since it cannot create
>>>>>> projects
>>>>>> out of subfolders of a project. To fix it, you need to remove the
>>>>>> Glassfish project (but beware not to remove its content!). It's easier
>>>>>> installing CVS once you have found where to get it from.
>>>>>>
>>>>>> Tip (c): Don't try any other thing but downloading the
>>>>>> glassfish/bootstrap. For example, do NOT try that:
>>>>>>
>>>>>> md Glassfish
>>>>>> cvs -d :pserver:<userid>@cvs.dev.java.net:/cvs checkout bootstrap
>>>>>>
>>>>>> While it will result in exactly the same checkout you will soon remark
>>>>>> that some (don't ask me why) was so clever to add "../../glassfish"
>>>>>> into
>>>>>> the dependencies of some projects, so in fact Maven will not be
>>>>>> able to
>>>>>> resolve dependencies. If you didn't hear what I told you, then you
>>>>>> should do "mv Glassfish glassfish" as soon as possible... Unix is case
>>>>>> sensitive... Would be great if someone could change the Maven files to
>>>>>> not include "../../glassfish" but only "../" instead. It took me two
>>>>>> hours to find out about that.
>>>>>>
>>>>>> (2) The given command sequence is not sufficient. After installing CVS
>>>>>> on my OpenSUSE 10.1 laptop, I did what BuildGlassFish.html wants me
>>>>>> to do:
>>>>>>
>>>>>> % mkdir workspace
>>>>>> % cd workspace
>>>>>> % cvs -d :pserver:<userid>@cvs.dev.java.net:/cvs checkout
>>>>>> glassfish/bootstrap
>>>>>>
>>>>>> As I wrote before, there is a CVS bug, so actually I had to do
>>>>>> % cvs -d :pserver:<userid>@cvs.dev.java.net:/cvs logout before the
>>>>>> checkout to make the checkout work.
>>>>>>
>>>>>> BTW, it is funny that I need to pass my name but not my password. But
>>>>>> maybe its only me that thinks it would be a better idea to have either
>>>>>> an anonymous account for readers plus a UID + PWD secured account for
>>>>>> committers.
>>>>>>
>>>>>> (3) As next step the web site wants a contributor to create a
>>>>>> build.properties file. It would be great if someone could change
>>>>>> the web
>>>>>> site to use a fixed size font to render the variable names. This
>>>>>> improves readability a lot. I had to read that chapter five times to
>>>>>> understand it correctly, just due to readability.
>>>>>>
>>>>>> (4) The web site says JDK 1.5.0_07 is needed. Actually I doubt this.
>>>>>> AFAIK it should work with any JDK 5 implementation.
>>>>>>
>>>>>> (5) Also the site says "Previously, we need to set 2 extra
>>>>>> variables ".
>>>>>> I wondered "previously to what"? In fact the file shall contain four
>>>>>> lines but not two. So why not just "add x and y to that file"? Also
>>>>>> you
>>>>>> say "...no need to set those now". Cool, I shall do something but I
>>>>>> shall not do it now. If you liked to confuse the contributor with that
>>>>>> sentence, you succeeded finally!
>>>>>>
>>>>>> (6) You want contributors to install and use an outdated version of
>>>>>> Maven. This is not very smart. It would be highly appreciated to
>>>>>> update
>>>>>> the Glassfish project to the latest Maven 2.0.4, since 1.x and 2.x are
>>>>>> almost incompatible and users that started with current Maven 2.x just
>>>>>> don't know how to handle Maven 1.x projects. Also it is not very smart
>>>>>> that I need to have Maven 1.0.2 installed just to compile Glassfish
>>>>>> while all my other projects are done using Maven 2.x. Its just
>>>>>> squandered time.
>>>>>>
>>>>>> (7) Maven 2.0.4 allows projects to be located in hierarchic
>>>>>> folders, as
>>>>>> you did it with the workspace/glassfish/bootstrap folders. You can use
>>>>>> Maven to compile a single project by starting it inside of that
>>>>>> folder,
>>>>>> or you can make it compile the complete glassfish by starting it at
>>>>>> the
>>>>>> root folder. Unfortunately glassfish is missing the needed Maven files
>>>>>> in the root folder to make it work. Instead, you are forcing the
>>>>>> contributor to cd into glassfish/bootstrap, what in fact is not (a)
>>>>>> Maven style (b) intuitive. Once having migrated to Maven 2.0.4 you
>>>>>> should change this ASAP.
>>>>>>
>>>>>> (8) Maven 2.0.4 suggests to have tests inside of the project folder
>>>>>> but
>>>>>> not to have a separated test project. For example, tests for
>>>>>> entity-persistence should be located inside of the folder
>>>>>> entity-persistence/tests but not inside of entity-persistence-tests.
>>>>>> This enables users to test a project by doing: cd entity-persistence;
>>>>>> mvn test, what in fact is (a) Maven style and (b) intuitive. Also it
>>>>>> reduces the overall complexity of the Glassfish project.
>>>>>>
>>>>>> (9) Please provide ONE SINGLE, SIMPLE beginner's page! In the past
>>>>>> days
>>>>>> I received lots of links and tips etc. This just confuses new
>>>>>> contributors. Reduce it to a very small and short intro, and abstain
>>>>> >from doing three things:
>>>>>> (a) Don't let contributors decide which branch / tag to use. Since YOU
>>>>>> have the problems with merging the changes, YOU should decide whether
>>>>>> contributors start from HEAD or from FCS. Since it is much easier to
>>>>>> merge HEAD-branched contributions, just remove the tip with the FCS
>>>>>> tag.
>>>>>>
>>>>>> (b) Don't let contributors decide whether to download a complete
>>>>>> Glassfish source hierarchy or just a single project. Since there is no
>>>>>> page found how to contribute to a single project, and since it is not
>>>>>> working correctly (I tried it out several times), always force
>>>>>> contributors to have the complete Glassfish hierarchy downloaded. It
>>>>>> takes a long time, but it will work then at least. NOTE: Actually
>>>>>> after
>>>>>> 92 minutes Maven gave up with the error message printed in the
>>>>>> header of
>>>>>> this posting; in fact it is NOT working.
>>>>>>
>>>>>> (c) "This will build GlassFish V2 with clustering features. If you
>>>>>> want
>>>>>> to continue using GlassFish in V1 mode, you can use following
>>>>>> commands:
>>>>>> % maven bootstrap-pe build-pe configure-runtime-pe". Do you really
>>>>>> think
>>>>>> that anyone that needs a "Getting Started" page is able to at least
>>>>>> understand WHAT to decide at this stage?
>>>>>>
>>>>>> (10) IDE Support: Most Java programmers are using Eclipse. Sun
>>>>>> staff, I
>>>>>> know, this hurts you. But it is the truth. Since Glassfish is an Open
>>>>>> Source project it should take care not to ignore Eclipse people.
>>>>>> Due to
>>>>>> that reason, here are some points to take care of:
>>>>>>
>>>>>> (a) You have a nice page talking about IDE Support. But it only
>>>>>> talks of
>>>>>> NetBeans. Please add information on Eclipse, JBuilder, IDEA... or
>>>>>> remove
>>>>>> the NetBeans instructions otherwise. This would only be fair.
>>>>>>
>>>>>> (b) The source code contains NetBeans specific stuff. Maven actually
>>>>>> contains plugins for creating IDE projects out of a Maven project.
>>>>>> This
>>>>>> should be the preferred way. Remove the NetBeans stuff from the source
>>>>>> and add a netbeans plugin to Maven. That's not only cleaning the
>>>>>> source,
>>>>>> it also will be a great benefit to Maven.
>>>>>>
>>>>>> (c) Heres the lines lots of contributors might be waiting for: If you
>>>>>> want to edit (and compile) Glassfish with Eclipse IDE, its just
>>>>>> easy as
>>>>>> this:
>>>>>>
>>>>>> - Glassfish consists of a lot of single subprojects. Each one has
>>>>>> to be
>>>>>> its own project in Eclipse. You need to know that.
>>>>>> - If you want to edit / compile e. g. entity-persistence, then do the
>>>>>> following.
>>>>>> - cd workspace/glassfish/entity-persistence
>>>>>> - maven eclipse
>>>>>> - This made maven create an Eclipse project our of that Maven project.
>>>>>> Cool, isn't it?
>>>>>> - Open Eclipse IDE
>>>>>> - Import "Import existing project into workspace"
>>>>>> - Select workspace/glassfish/entity-persistence
>>>>>> - That's all. You can edit now. Eclipse will compile on the fly, as
>>>>>> you're used to.
>>>>>> - To build the project, from the command line type: maven build
>>>>>>
>>>>>> (11) ANT support: I have seen several build.xml files. Actually Maven
>>>>>> can create build.xml on the fly, so to keep the source clean and to
>>>>>> let
>>>>>> us help by Maven as much as possible, just remove them. They are not
>>>>>> needed if you have Maven 2.0.4.
>>>>>>
>>>>>> (12) A tip to the ones using Linux: It is not possible to compile
>>>>>> Glassfish using GNU Glasspath. You really need Sun JDK 1.5. To ensure
>>>>>> that Maven is using the correct SDK, you should do export
>>>>>> JAVA_HOME=/usr/java/jdk1.5.0_07 before issuing the maven command!
>>>>>>
>>>>>> (13) On my laptop (Athlon 1800+, 512MB RAM) Maven needed more than one
>>>>>> hour to build Glassfish. Don't panic. It's just slow. I think the
>>>>>> reason
>>>>>> is that appserv-rt.jar is updated quite often. Maybe build times could
>>>>>> be reduced by either building a new appserv-rt.jar instead of updating
>>>>>> an existing one, or by splitting up appserv-rt.jar into single JARs.
>>>>>>
>>>>>> Tom Ware wrote:
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>> Hi Markus,
>>>>>>>
>>>>>>> Please let me know if you have any questions related to either
>>>>>>> getting things set up, or if you are looking for some guidance
>>>>>>> related
>>>>>>> to working within the entity-persistence module. I will do my
>>>>>>> best to
>>>>>>> help.
>>>>>>>
>>>>>>> -Tom
>>>>>>>
>>>>>>> Markus KARG wrote:
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>> Tom,
>>>>>>>>
>>>>>>>> thank you for your explanation. As I already wrote, maven is
>>>>>>>> indeed able
>>>>>>>> to create both, a build.xml for using ant, also an Eclipse
>>>>>>>> project files
>>>>>>>> set (.project etc.) automatically from the projects.xml file
>>>>>>>> found in
>>>>>>>> the entity-persistence-* subprojects, which indeed is an easy way
>>>>>>>> once
>>>>>>>> the coder knows it and once it works... This is a preferable
>>>>>>>> solution I
>>>>>>>> think, once someone installed out-aged maven 1.0.2 (but choosing
>>>>>>>> latest
>>>>>>>> Maven 2.0.4 would be a strategical decision of the Glassfish
>>>>>>>> management
>>>>>>>> not to be discussed in this subproject). So I could live with
>>>>>>>> this. Also
>>>>>>>> I was able to use ANT to build the -tests subproject. So since I had
>>>>>>>> learned about that old maven version now, I decided to remove
>>>>>>>> everything
>>>>>>>>
>>>>>>>
>>>>>>> >from my disks and start from scratch (once more). I think all my
>>>>>>>> trials
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>> crashed the config in some way. I will write another email once I
>>>>>>>> have
>>>>>>>> done that. Day four...
>>>>>>>>
>>>>>>>> Thanks for all
>>>>>>>> Markus
>>>>>>>>
>>>>>>>> Tom Ware wrote:
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>> Hi Markus,
>>>>>>>>>
>>>>>>>>> I am admittedly not an Eclipse power user, but here is what I do to
>>>>>>>>> get my entity-persistence projects to build in Eclipse.
>>>>>>>>>
>>>>>>>>> - My Eclipse project contains a copy of the files checked out from
>>>>>>>>> CVS. (The files from <cvs
>>>>>>>>> workspace>/glassfish/entity-persistence/src/java)
>>>>>>>>> - I depend on two things to compile this project
>>>>>>>>> 1. A glassfish javaee.jar file. I obtain this by using the "maven
>>>>>>>>> bootstrap" functionality to get it, but one could just as easily be
>>>>>>>>> obtained by downloading the latest nightly build and installing it.
>>>>>>>>> It is found in <glassfish install directory>/lib.
>>>>>>>>> 2. A couple of source files generated by antlr during the build
>>>>>>>>> process. You can either have a look at the antlr.generate
>>>>>>>>> target in
>>>>>>>>> the build.xml found in entity-persistence for information about
>>>>>>>>> how to
>>>>>>>>> generate or just used the files from the attached jar:
>>>>>>>>> EJBQLAntlr.jar.
>>>>>>>>> - With these two dependancies added, my entity-persistence project
>>>>>>>>> will compile.
>>>>>>>>> - Using the classes within Glassfish is a matter of updating the
>>>>>>>>> toplink.essentials.jar file in <glassfish install directory>/lib
>>>>>>>>> with
>>>>>>>>> the newly compiled classes. I usually use the build script to do
>>>>>>>>> this, but a jar could be fairly easily created since all it
>>>>>>>>> contains
>>>>>>>>> are the compiled class files and 4 other files.
>>>>>>>>> * The META-INF directory and its contents from
>>>>>>>>> entity-persistence/resources
>>>>>>>>> * The VendorNameToPlatformMapping.properties file found in
>>>>>>>>> src/java/oracle/toplink/essentials/internal/helper (This file
>>>>>>>>> should
>>>>>>>>> be place in the oracle/toplink/essentials/internal/helper
>>>>>>>>> directory of
>>>>>>>>> the jar file)
>>>>>>>>> * The two xsd files found in: <cvs
>>>>>>>>> workspace>/glassfish/persistence-api/schemas
>>>>>>>>> - If you want to see a built version of this file, you can
>>>>>>>>> either get
>>>>>>>>> it in you glassfish install or get the latest build from the
>>>>>>>>> following
>>>>>>>>> webpage:
>>>>>>>>> https://glassfish.dev.java.net/downloads/persistence/JavaPersistence.html
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> - My entity-persistence-tests project depends on 3 things
>>>>>>>>> 1. The set of compiled files from the entity-persistence project
>>>>>>>>> described above
>>>>>>>>> 2. The javaee.jar file mentioned above
>>>>>>>>> 3. A JUnit jar file - I use the one found in <cvs
>>>>>>>>> workspace>/glassfish/appserv-tests/lib
>>>>>>>>> - With those files it compiles
>>>>>>>>> - The tests are actually run using 3 jar files. The way they are
>>>>>>>>> build is best described in the build.xml found in
>>>>>>>>> entity-persistence-tests, but if you would like some additional
>>>>>>>>> information about their contents, just let me know.
>>>>>>>>>
>>>>>>>>> If you can get these projects to compile, the next step is to
>>>>>>>>> run the
>>>>>>>>> tests. I can help you with the entity-persistence-tests. We will
>>>>>>>>> have to include the folks from Sun in the discussion about how
>>>>>>>>> to get
>>>>>>>>> the app server tests to run.
>>>>>>>>>
>>>>>>>>> Let me know if this information is helpful and where you would like
>>>>>>>>> further details,
>>>>>>>>> Tom
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> Markus KARG wrote:
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>> I found some more time to play with out-dated Maven 1.0.2 and got
>>>>>>>>>> Eclipse to at least edit and compile entity-persistence module.
>>>>>>>>>> Here is
>>>>>>>>>> what I had to do to make it work:
>>>>>>>>>> - In Eclipse, use CVS browser to download the complete (!)
>>>>>>>>>> glassfish
>>>>>>>>>> source (not only the persistency module). BEWARE NOT TO NAME THE
>>>>>>>>>> Eclipse
>>>>>>>>>> Project "Glassfish", but it must be named "glassfish" (all in
>>>>>>>>>> lower
>>>>>>>>>> cases -- Maven will fail otherwise).
>>>>>>>>>> - Install out-dated Maven 1.0.2 (yes, even if you have current
>>>>>>>>>> Maven
>>>>>>>>>> 2.0.4 installed already...)
>>>>>>>>>> - Close Eclipse
>>>>>>>>>> - Move the glassfish folder from your Eclipse workspace to
>>>>>>>>>> somewhere
>>>>>>>>>> else, e. g. /home/yours
>>>>>>>>>> - Go to the command line (e. g. bash)
>>>>>>>>>> - Go into the glassfish/glassfish folder
>>>>>>>>>> - Set your correct JAVA_HOME (mine was softlinked to GNU
>>>>>>>>>> Classpath,
>>>>>>>>>> which will fail due to a Maven 1.0.2 bug; you need Sun JDK).
>>>>>>>>>> - Set your PATH to include the maven-1.0.2/bin folder.
>>>>>>>>>> - Type: maven
>>>>>>>>>> - Should run without a failure (but needs hours)
>>>>>>>>>> - Go into the glassfish/entity-persistence folder
>>>>>>>>>> - Type: maven (Maven 2.0.4 users: Do NOT type mvn compile)
>>>>>>>>>> - Should run without a failure, but needs some minutes
>>>>>>>>>> - Type: maven -Dmaven.eclipse.workspace=/home/yours/.eclipse
>>>>>>>>>> eclipse:add-maven-repo (.eclipse is the folder I am hosting my
>>>>>>>>>> eclipse
>>>>>>>>>> workspace inside). (Maven 2.0.4 users: Do NOT type mvn
>>>>>>>>>> -Declipse.workspace, but really maven -Dmaven.eclipse.workspace).
>>>>>>>>>> - Should run without a failure. BEWARE NOT TO HAVE ECLIPSE OPEN
>>>>>>>>>> WHILE
>>>>>>>>>> THIS IS RUNNING.
>>>>>>>>>> - Type: maven eclipse (Maven 2.0.4 users: Do NOT type mvn
>>>>>>>>>> eclipse:eclipse but really maven eclipse).
>>>>>>>>>> - Open Eclipse
>>>>>>>>>> - File/Import: Import existing project into current workspace;
>>>>>>>>>> select:
>>>>>>>>>> /home/yours/glassfish/entity-persistence/
>>>>>>>>>> - After some seconds Eclipse should show the project, without any
>>>>>>>>>> error
>>>>>>>>>> message.
>>>>>>>>>>
>>>>>>>>>> This procedure allows me to edit & compile entity-persistence in
>>>>>>>>>> Eclipse
>>>>>>>>>> 3.1, but it doesn't work for entity-persistence-test due to the
>>>>>>>>>> following failure:
>>>>>>>>>>
>>>>>>>>>> markus_at_localhost:~/glassfish/entity-persistence-tests> maven
>>>>>>>>>> __ __
>>>>>>>>>> | \/ |__ _Apache__ ___
>>>>>>>>>> | |\/| / _` \ V / -_) ' \ ~ intelligent projects ~
>>>>>>>>>> |_| |_\__,_|\_/\___|_||_| v. 1.0.2
>>>>>>>>>>
>>>>>>>>>> The build cannot continue because of the following unsatisfied
>>>>>>>>>> dependencies:
>>>>>>>>>>
>>>>>>>>>> commons-jelly-tags-interaction-1.0.jar
>>>>>>>>>> commons-jelly-tags-http-1.0.jar
>>>>>>>>>>
>>>>>>>>>> Total time: 3 seconds
>>>>>>>>>> Finished at: Thu Aug 17 16:18:09 CEST 2006
>>>>>>>>>>
>>>>>>>>>> markus_at_localhost:~/glassfish/entity-persistence-tests>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> Maybe someone knows the solution for that?
>>>>>>>>>>
>>>>>>>>>> Thanks
>>>>>>>>>> Markus
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> Eduardo Pelegri-Llopart wrote:
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>> Thanks much Tom!
>>>>>>>>>>>
>>>>>>>>>>> Documenting this approach seems very valuable. If you give us a
>>>>>>>>>>> pointer to how to do that we will add it to the persistence
>>>>>>>>>>> pages.
>>>>>>>>>>>
>>>>>>>>>>> Marina, could you help us with determining what tests need to
>>>>>>>>>>> be run
>>>>>>>>>>> and how?
>>>>>>>>>>>
>>>>>>>>>>> Thanks,
>>>>>>>>>>> - eduard/o
>>>>>>>>>>>
>>>>>>>>>>> Markus KARG wrote:
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>> Tom,
>>>>>>>>>>>>
>>>>>>>>>>>> thank you for your kind answer. Indeed what you wrote is the
>>>>>>>>>>>> only
>>>>>>>>>>>> thing
>>>>>>>>>>>> I want to do *now* (maybe in future I will also contribute to
>>>>>>>>>>>> other
>>>>>>>>>>>> projects, but then the project structure might be 'corrected'
>>>>>>>>>>>> meanwhile). So it would be great if you could send me your
>>>>>>>>>>>> Eclipse
>>>>>>>>>>>> project (you can just use the Eclipse EXPORT menu item) to be
>>>>>>>>>>>> able to
>>>>>>>>>>>> compile the entity-persistence and entity-persistence-tests.
>>>>>>>>>>>> Also I
>>>>>>>>>>>> need
>>>>>>>>>>>> to know how to integrate the new .jar then into SAS9 to let
>>>>>>>>>>>> it run
>>>>>>>>>>>> (for
>>>>>>>>>>>> a "real life" test).
>>>>>>>>>>>>
>>>>>>>>>>>> Thanks a lot!
>>>>>>>>>>>> Markus
>>>>>>>>>>>>
>>>>>>>>>>>> Tom Ware wrote:
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>> Hi Markus,
>>>>>>>>>>>>>
>>>>>>>>>>>>> I am one of the leads for the entity-persistence module and
>>>>>>>>>>>>> have
>>>>>>>>>>>>> been
>>>>>>>>>>>>> doing my best to follow this conversation. I am not sure
>>>>>>>>>>>>> how much
>>>>>>>>>>>>> help I will be, but I'll add some comments.
>>>>>>>>>>>>>
>>>>>>>>>>>>> I also struggled getting the build system going, so I feel your
>>>>>>>>>>>>> pain. I am wondering if between Eduardo and I we can
>>>>>>>>>>>>> provide a way
>>>>>>>>>>>>> that you can contribute to the entity-persistence part of the
>>>>>>>>>>>>> project
>>>>>>>>>>>>> (so that you can allow MAX DB support in the Java
>>>>>>>>>>>>> Persistence API)
>>>>>>>>>>>>>
>>>>>>>>>>>>> I have used both Eclipse and JDeveloper to work on the
>>>>>>>>>>>>> entity-persistence and entity-persistence-tests modules. I
>>>>>>>>>>>>> currently
>>>>>>>>>>>>> have working Eclipse projects that allow me to work with these
>>>>>>>>>>>>> projects.
>>>>>>>>>>>>>
>>>>>>>>>>>>> The entity-persistence and entity-persistence-tests modules
>>>>>>>>>>>>> very
>>>>>>>>>>>>> minimal dependancies on the rest of GlassFish (they need to
>>>>>>>>>>>>> because
>>>>>>>>>>>>> the specification says they have to be portable)
>>>>>>>>>>>>>
>>>>>>>>>>>>> I use CVS to check out the two modules mentioned above and
>>>>>>>>>>>>> have a
>>>>>>>>>>>>> simple set of jars I depend on for compilation. My only real
>>>>>>>>>>>>> interation with the GlassFish build system is to run the tests
>>>>>>>>>>>>> (something I am hopeful that some of the folks at Sun can
>>>>>>>>>>>>> help you
>>>>>>>>>>>>> get
>>>>>>>>>>>>> going with minimal pain.)
>>>>>>>>>>>>>
>>>>>>>>>>>>> Let me know if allowing Max DB support on the Java Persistence
>>>>>>>>>>>>> API is
>>>>>>>>>>>>> what you were interested in doing (unfortunately other parts
>>>>>>>>>>>>> of the
>>>>>>>>>>>>> project are out of my area of expertise). If that is what
>>>>>>>>>>>>> you are
>>>>>>>>>>>>> interested in doing, I'll do my best to give you the details of
>>>>>>>>>>>>> how I
>>>>>>>>>>>>> have every thing working in Eclipse and you can let me know
>>>>>>>>>>>>> if the
>>>>>>>>>>>>> instructions are manageable. If we can get you to the point
>>>>>>>>>>>>> that you
>>>>>>>>>>>>> can work in a reasonably simple manner, all that remains is
>>>>>>>>>>>>> to get
>>>>>>>>>>>>> the
>>>>>>>>>>>>> tests up and running and hopefully Eduardo can give us some
>>>>>>>>>>>>> help
>>>>>>>>>>>>> with
>>>>>>>>>>>>> that part of things.
>>>>>>>>>>>>>
>>>>>>>>>>>>> Let me know if this is of interest to you.
>>>>>>>>>>>>>
>>>>>>>>>>>>> Best Regards,
>>>>>>>>>>>>> Tom Ware
>>>>>>>>>>>>>
>>>>>>>>>>>>> Markus KARG wrote:
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>>> Eduardo,
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> hope this will be soon, because I spent two more hours
>>>>>>>>>>>>>> today in
>>>>>>>>>>>>>> downloading the out-aged maven 1.0.2 on my machine and
>>>>>>>>>>>>>> tried once
>>>>>>>>>>>>>> more
>>>>>>>>>>>>>> to get Glassfish built (following the rules on the Glassfish
>>>>>>>>>>>>>> WebSite),
>>>>>>>>>>>>>> but now maven is not working correctly, complaining about
>>>>>>>>>>>>>> things
>>>>>>>>>>>>>> non-maven-admins do not understand. So once more, I give
>>>>>>>>>>>>>> up. If
>>>>>>>>>>>>>> your
>>>>>>>>>>>>>> project is ready for *FAST* contributing, I'll be glad to
>>>>>>>>>>>>>> contribute
>>>>>>>>>>>>>> then (please let me know by direct mail, since I will quite
>>>>>>>>>>>>>> the
>>>>>>>>>>>>>> subscription to this mailing list soon as it is of no more
>>>>>>>>>>>>>> interest
>>>>>>>>>>>>>> since I am not able to contribute my code). But until then,
>>>>>>>>>>>>>> sorry, I
>>>>>>>>>>>>>> need to prefer working around the missing MaxDB support in my
>>>>>>>>>>>>>> application instead of contributing the MaxDB support to
>>>>>>>>>>>>>> Glassfish.
>>>>>>>>>>>>>> If I
>>>>>>>>>>>>>> would have done so from the beginning, I would have saved more
>>>>>>>>>>>>>> than
>>>>>>>>>>>>>> once
>>>>>>>>>>>>>> day of work. Sad, but true. As you see, now we're back as
>>>>>>>>>>>>>> we had
>>>>>>>>>>>>>> been on
>>>>>>>>>>>>>> Monday: Still no MaxDB support in Glassfish, still not
>>>>>>>>>>>>>> improved
>>>>>>>>>>>>>> contribution process. I am sad about this, actually, but two
>>>>>>>>>>>>>> days of
>>>>>>>>>>>>>> frustration is enough. I am willing to spend my 20 years of
>>>>>>>>>>>>>> experience
>>>>>>>>>>>>>> in coding, but I am not willing spending more nerves on
>>>>>>>>>>>>>> failing
>>>>>>>>>>>>>> attempts
>>>>>>>>>>>>>> to just compile the code. As you can seen, using maven not
>>>>>>>>>>>>>> only
>>>>>>>>>>>>>> has
>>>>>>>>>>>>>> benefits. If the project structure just would be one src
>>>>>>>>>>>>>> folder
>>>>>>>>>>>>>> containing the complete source tree plus a simple
>>>>>>>>>>>>>> build.xml, then
>>>>>>>>>>>>>> you
>>>>>>>>>>>>>> still would have modularization AND anybody could use
>>>>>>>>>>>>>> Eclipse /
>>>>>>>>>>>>>> ANT
>>>>>>>>>>>>>> without spending days... :-(
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> Markus
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> Eduardo Pelegri-Llopart wrote:
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> Hi Markus. I certainly agree; but sometimes, in a very
>>>>>>>>>>>>>>> large and
>>>>>>>>>>>>>>> complex project, making it easy is not that easy :-(. But
>>>>>>>>>>>>>>> we are
>>>>>>>>>>>>>>> seing a spike in interest in GlassFish so we are going to
>>>>>>>>>>>>>>> try to
>>>>>>>>>>>>>>> improve this in the near future.
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> THanks, and please keep your interest in GlassFish
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> - eduard/o
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> Markus KARG wrote:
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> Eduardo,
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> I have managed a dozen of open source projects on my own and
>>>>>>>>>>>>>>>> know
>>>>>>>>>>>>>>>> your
>>>>>>>>>>>>>>>> problems certainly. But I learned one lesson very soon:
>>>>>>>>>>>>>>>> If you
>>>>>>>>>>>>>>>> have a
>>>>>>>>>>>>>>>> lot of items on your stack and one of them is "make it
>>>>>>>>>>>>>>>> easy for
>>>>>>>>>>>>>>>> contributors to add their code", then do that before
>>>>>>>>>>>>>>>> anything
>>>>>>>>>>>>>>>> else.
>>>>>>>>>>>>>>>> Why
>>>>>>>>>>>>>>>> that? Because the easier it is to add small
>>>>>>>>>>>>>>>> contributions, the
>>>>>>>>>>>>>>>> more
>>>>>>>>>>>>>>>> contributors will add code to the project. In turn, they
>>>>>>>>>>>>>>>> will
>>>>>>>>>>>>>>>> help you
>>>>>>>>>>>>>>>> fix all the other items on your stack. If you do all the
>>>>>>>>>>>>>>>> items on
>>>>>>>>>>>>>>>> your
>>>>>>>>>>>>>>>> own before making it easier to contribute code, then you
>>>>>>>>>>>>>>>> will
>>>>>>>>>>>>>>>> have
>>>>>>>>>>>>>>>> to do
>>>>>>>>>>>>>>>> all the work on your own while all the others cannot help
>>>>>>>>>>>>>>>> you
>>>>>>>>>>>>>>>> anything
>>>>>>>>>>>>>>>> an get frustrated. I learned about that in my own projects,
>>>>>>>>>>>>>>>> also in
>>>>>>>>>>>>>>>> some
>>>>>>>>>>>>>>>> projects I contributed to. So this is no critics, just a
>>>>>>>>>>>>>>>> tip.
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> If I find more time, I certainly will try out to
>>>>>>>>>>>>>>>> contribute my
>>>>>>>>>>>>>>>> changes
>>>>>>>>>>>>>>>> for MaxDB (and maybe more) to Glassfish, but at the
>>>>>>>>>>>>>>>> moment, I
>>>>>>>>>>>>>>>> do not
>>>>>>>>>>>>>>>> have the time to invest more time in the unnecessarily
>>>>>>>>>>>>>>>> complex
>>>>>>>>>>>>>>>> structure
>>>>>>>>>>>>>>>> of the Glassfish code (in fact, the modularization is the
>>>>>>>>>>>>>>>> main
>>>>>>>>>>>>>>>> problem
>>>>>>>>>>>>>>>> for Eclipse -- you have to add every single src folder
>>>>>>>>>>>>>>>> manually,
>>>>>>>>>>>>>>>> which
>>>>>>>>>>>>>>>> needs hours of time).
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> Have Fun
>>>>>>>>>>>>>>>> Markus
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> Eduardo Pelegri-Llopart wrote:
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>> It must be possible to download the code and type "ant" or
>>>>>>>>>>>>>>>>>> press
>>>>>>>>>>>>>>>>>> Eclipse's "build" button if you want to receive SMALL
>>>>>>>>>>>>>>>>>> contributions.
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> But
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>> maybe you don't want them, actually?
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>> Thanks
>>>>>>>>>>>>>>>>>> Markus
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> Yes, we want them. We are just your typical Open Source
>>>>>>>>>>>>>>>>> project:
>>>>>>>>>>>>>>>>> there is always a long list of things to do.
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> Let's see what others say.
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> - eduard/o
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> Markus KARG wrote:
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>> As I wrote yesterday, I just want to spent a few hours
>>>>>>>>>>>>>>>>>> contributing
>>>>>>>>>>>>>>>>>> the
>>>>>>>>>>>>>>>>>> code necessary to support MaxDB / SAPDB (which
>>>>>>>>>>>>>>>>>> shouldn't be
>>>>>>>>>>>>>>>>>> much
>>>>>>>>>>>>>>>>>> more
>>>>>>>>>>>>>>>>>> than editing a copy of the Sybase adaptor class).
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>> After spending three hours for downloading the Glassfish
>>>>>>>>>>>>>>>>>> source
>>>>>>>>>>>>>>>>>> and
>>>>>>>>>>>>>>>>>> trying to convince Eclipse to compile, I gave up now. I
>>>>>>>>>>>>>>>>>> don't
>>>>>>>>>>>>>>>>>> have
>>>>>>>>>>>>>>>>>> time
>>>>>>>>>>>>>>>>>> to find out how to compile the source any longer. I read
>>>>>>>>>>>>>>>>>> thousands of
>>>>>>>>>>>>>>>>>> lines of how-tos for using Netbeans (which I don't have
>>>>>>>>>>>>>>>>>> installed) and
>>>>>>>>>>>>>>>>>> Maven (which I am not aware how to use) but there is no
>>>>>>>>>>>>>>>>>> SIMPLE
>>>>>>>>>>>>>>>>>> info on
>>>>>>>>>>>>>>>>>> how to just let ANT or Eclipse run to get it built.
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>> Hey, remember, I just want to contribute one single
>>>>>>>>>>>>>>>>>> class...!
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>> So is there a SIMPLE way to configure Eclipse to compile
>>>>>>>>>>>>>>>>>> Glassfish
>>>>>>>>>>>>>>>>>> available? Or is there build.xml I haven't found?
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>> I will neither learn how to use Netbeans nor how to
>>>>>>>>>>>>>>>>>> administrate
>>>>>>>>>>>>>>>>>> Maven
>>>>>>>>>>>>>>>>>> just to contribute a class that is to be written in
>>>>>>>>>>>>>>>>>> less than
>>>>>>>>>>>>>>>>>> one
>>>>>>>>>>>>>>>>>> hour. :-(
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>> So if there is no simple way to compile Glassfish or to
>>>>>>>>>>>>>>>>>> contribute my
>>>>>>>>>>>>>>>>>> code in another way, I am sorry, then I have to abstain
>>>>>>>>>>>>>>>>>> from
>>>>>>>>>>>>>>>>>> contributing to Glassfish (sad, but true, but my time is
>>>>>>>>>>>>>>>>>> scarce).
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>> It must be possible to download the code and type "ant" or
>>>>>>>>>>>>>>>>>> press
>>>>>>>>>>>>>>>>>> Eclipse's "build" button if you want to receive SMALL
>>>>>>>>>>>>>>>>>> contributions. But
>>>>>>>>>>>>>>>>>> maybe you don't want them, actually?
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>> Thanks
>>>>>>>>>>>>>>>>>> Markus
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>
>>>>>>>
>>>>>>>
>>>>>
>>>>
>>>>
>>> ---------------------------------------------------------------------
>>> To unsubscribe, e-mail: dev-unsubscribe_at_glassfish.dev.java.net
>>> For additional commands, e-mail: dev-help_at_glassfish.dev.java.net
>>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: dev-unsubscribe_at_glassfish.dev.java.net
>> For additional commands, e-mail: dev-help_at_glassfish.dev.java.net
>>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe_at_glassfish.dev.java.net
> For additional commands, e-mail: dev-help_at_glassfish.dev.java.net
>