The problem is to get the best out of Eclipse and be compatible with
ProjectBuilderWO.
PB.project default structure:
Folder
*.java
*.wo
*.api
Eclipse .project default structure(Project folder is src folder):
Folder
*.java
*.properties
So if you merge both and build it the result is:
Folder
*.java
*.class
*.properties
*.wo
*.api
Next step put *.java in a src folder and the output to bin(This
structure is used by WOLips):
Folder
src
*.java
*.properties
bin
*.class
*.properties
*.wo
*.api
A scr folder in Eclipse (added as a src folder to the classpath) is
handled this way. All *.java are compiled to bin/*class. All other
files are COPIED to bin. In your project *.wo is in a src folder. The
*.wo will be in the src folder, the bin folder, the woa and the jar.
Whenever you change the WOLips structure it is possible that you get
side effects. The WOLips structure itself has the problem that the java
part of a WOComponent created by ProjectBuilderWO is placed in the root
folder and not the src folder.
Have fun
Ulrich
Am Dienstag, 01.10.02, um 22:27 Uhr (Europe/Berlin) schrieb Christian
Edward Gruber:
> New twist, but encouraging.
>
> The below listed system works just fine, and if you update PB.project
> in
> the root, it updates with the proper subdirs (included below).
> However,
> note that because I have src/Components in my classpath (to compile the
> .wo's .java files) eclipse copies the .wo files and all their
> supplimentary files to bin when it does an incremental compile.
> Therefore, PB.project, when updated, actually includes the webobjects
> components twice - once from bin/ and once from src/Components.
>
> I'm going to dig and see if this results from eclipse or wolips and if
> it can be constrained in the build.xml.
>
> Note, this is with 8.8 code. Also, all of the below opens cleanly in
> PB.project, and you can navigate to the .wos and .javas to your heart's
> content. I haven't tried to build yet with PB. We'll see how that
> goes.
>
> I've included my various config files for your amusement, if you find
> them relevant. I'm not sure if anyone has used the system in quite
> this
> way.
>
> What I know about it is that PB will put new components in the
> ${basedir} if you'll let it, so if you want to use something like this,
> I'd recommend having WOLips actually create your components and model
> files.
>
> Regards,
> Christian.
>
> (inclusions: build.properties, build.xml, .classpath, .project,
> PB.project)
>
> ----------------
> build.properties:
>
> wolips.next.root = c:\\Apple
>
> ---------
> build.xml:
>
> <project name="${projectname}" default="build" basedir=".">
>
> <property name="component.dir"
> value="${basedir}/src/Components"/>
> <property name="resource.dir" value="${basedir}/src/Resources"/>
> <property name="image.dir" value="${basedir}/src/Images"/>
> <property name="release.dir" value="${basedir}/release"/>
>
> <target name="init">
> <property file="build.properties"/>
> <property name="wo.woroot" value="${wolips.next.root}"/>
> </target>
>
> <target name="build" depends="init">
> <woapplication name="InfotrieverPublisherPortal"
> destDir="${release.dir}">
> <classes dir="bin">
> </classes>
> <resources dir="${resource.dir}">
> <include name="*.eomodeld/**"/>
> </resources>
> <resources dir="${component.dir}">
> <include name="*.api"/>
> <include name="*.wo/**"/>
> </resources>
> <wsresources dir="${image.dir}">
> <include name="*/**"/>
> </wsresources>
> </woapplication>
> </target>
> </project>
>
> ----------
> .classpath:
>
> <?xml version="1.0" encoding="UTF-8"?>
> <classpath>
> <classpathentry kind="src" path="src/Components"/>
> <classpathentry kind="src" path="src/Java"/>
> <classpathentry kind="src" path="src/Test"/>
> <classpathentry kind="lib"
> path="C:/Apple/Library/Frameworks/JavaWebObjects.framework/Resources/
> Jav
> a/javawebobjects.jar"/>
> <classpathentry kind="lib"
> path="C:/Apple/Library/Frameworks/JavaFoundation.framework/Resources/
> Jav
> a/javafoundation.jar"/>
> <classpathentry kind="lib"
> path="C:/Apple/Library/Frameworks/JavaXML.framework/Resources/Java/
> javax
> ml.jar"/>
> <classpathentry kind="lib"
> path="C:/Apple/Library/Frameworks/JavaWOExtensions.framework/
> Resources/J
> ava/JavaWOExtensions.jar"/>
> <classpathentry kind="lib"
> path="C:/Apple/Library/Frameworks/JavaEOAccess.framework/Resources/
> Java/
> javaeoaccess.jar"/>
> <classpathentry kind="lib"
> path="C:/Apple/Library/Frameworks/JavaEOControl.framework/Resources/
> Java
> /javaeocontrol.jar"/>
> <classpathentry kind="var" path="JRE_LIB" rootpath="JRE_SRCROOT"
> sourcepath="JRE_SRC"/>
> <classpathentry kind="output" path="bin"/>
> </classpath>
>
> --------
> .project:
>
> <?xml version="1.0" encoding="UTF-8"?>
> <projectDescription>
> <name>PublisherPortal.woa</name>
> <comment></comment>
> <projects>
> </projects>
> <buildSpec>
> <buildCommand>
> <name>org.eclipse.jdt.core.javabuilder</name>
> <arguments>
> </arguments>
> </buildCommand>
> <buildCommand>
>
> <name>org.objectstyle.wolips.woapplicationbuilder</name>
> <arguments>
> </arguments>
> </buildCommand>
> </buildSpec>
> <natures>
> <nature>org.eclipse.jdt.core.javanature</nature>
> </natures>
> </projectDescription>
>
> ----------
> Pb.project:
>
> {
> PDO_UNIX_BUILDTOOL = $NEXT_ROOT/Developer/bin/make;
> PROJECTTYPE = JavaWebObjectsFramework;
> PDO_UNIX_OBJCPLUS_COMPILER = "$(NEXTDEV_BIN)/gcc";
> PROJECTVERSION = 2.8;
> DYNAMIC_CODE_GEN = YES;
> FILESTABLE =
> {
> OTHER_SOURCES =
> (
> CustomInfo.plist,
> java.template,
> Makefile,
> Makefile.postamble,
> Makefile.preamble
> );
> WO_COMPONENTS =
> (
> bin/Main.wo,
> bin/Test.wo,
> src/Components/Main.wo,
> src/Components/Test.wo
> );
> SUBPROJECTS =
> ();
> WOAPP_RESOURCES =
> (
> bin/Main.api,
> bin/Test.api,
> src/Components/Main.api,
> src/Components/Test.api
> );
> FRAMEWORKS =
> (
> JavaEOAccess.framework,
> JavaEOControl.framework,
> JavaFoundation.framework,
> JavaWebObjects.framework,
> JavaWOExtensions.framework,
> JavaXML.framework
> );
> CLASSES =
> (
> src/Components/Main.java,
> src/Components/Test.java
> );
> };
> WINDOWS_INSTALLDIR = "$(LOCAL_LIBRARY_DIR)/Frameworks";
> LANGUAGE = English;
> NEXTSTEP_OBJCPLUS_COMPILER = /usr/bin/cc;
> PDO_UNIX_JAVA_COMPILER = "$(JDKBINDIR)/javac";
> MAKEFILEDIR = "$(MAKEFILEPATH)/java_makefiles";
> WINDOWS_JAVA_COMPILER = "$(JDKBINDIR)/javac.exe";
> NEXTSTEP_BUILDTOOL = /bin/gnumake;
> CURRENTLY_ACTIVE_VERSION = YES;
> WINDOWS_BUILDTOOL = $NEXT_ROOT/Developer/Executables/make;
> PDO_UNIX_INSTALLDIR = "$(LOCAL_LIBRARY_DIR)/Frameworks";
> PBPROJECTTYPEVERSION = 4.0;
> NEXTSTEP_INSTALLDIR = "$(LOCAL_LIBRARY_DIR)/Frameworks";
> DEPLOY_WITH_VERSION_NAME = A;
> PROJECTNAME = PublisherPortal.woa;
> WINDOWS_OBJCPLUS_COMPILER = "$(DEVDIR)/gcc";
> NEXTSTEP_JAVA_COMPILER = /usr/bin/javac;
> }
>
This archive was generated by hypermail 2.0.0 : Wed Oct 02 2002 - 03:51:46 EDT