I try to make an Ant script to deploy some applications with some
frameworks. The compilation should work on Win2K and MacOSX. Deployement
platform is Solaris. No compilation possible on the target environnement.
An extract of my ant script using Ant task
<woapplication name="${build.projectNameToCompile}"
destDir="${applicationsDir}" wsDestDir="${web.htdocs}" >
<classes dir="./ant_build/${build.projectNameToCompile}">
<include name="**/*.class" />
</classes>
<resources dir="${src}/${module}/${build.projectNameToCompile}">
<include name="*.eomodeld/**" />
<include name="**/*.wo/**" />
</resources>
<wsresources
dir="${src}/${module}/${build.projectNameToCompile}/WebServerResources/">
<include name="**" />
</wsresources>
<lib dir="${src}/${module}/${build.projectNameToCompile}">
<include name="*.properties" />
</lib>
<resources dir="${src}/${module}/${build.projectNameToCompile}">
<include name="**/*.wo/**" />
<include name="**/*.api" />
<include name="**/Properties" />
<include name="**/*.properties" />
</resources>
<frameworks dir="${wo.localroot}"
deploymentDir="${deployFramework}">
<include name="Library/Frameworks/*.framework" />
</frameworks>
</woapplication>
I made modifications in the method
public File getDeployedFile(File file) {
File result = file;
if(this.deploymentDir != null && !getEmbed()) {
// maps
// foo/bar/Baz.framework/Resources/Java/xxx.jar ->
/System/Library/Frameworks/Baz.framework
String oldPath = file.getPath();
String newRoot = deploymentDir.getPath();
String newPath = oldPath.replace('\\','/');
newRoot = newRoot.replace('\\','/');
newPath =
newPath.replaceFirst("(.*?)(/\\w+\\.framework/.*)", newRoot + "$2");
System.out.println(oldPath + "->" + newPath);
result = new File(newPath);
}
return result;
}
to have good pattern matching on Win2K.
Here is the UNIXClassPath.txt
there is 2 problems here, the first another FileSeparator problem i
think, the second LOCALROOT is used for standard frameworks, it should
be WOROOT
Now there is another problem:
# JVM == java
# JVMOptions ==
# JDB == jdb
# JDBOptions ==
# ApplicationClass == Application
APPROOT/Resources/Java/
APPROOT/Resources/Java/goapp.jar
LOCALROOTLibrary/Frameworks/JavaEOAccess.framework/Resources/Java/javaeoaccess.jar
LOCALROOTLibrary/Frameworks/JavaEOControl.framework/Resources/Java/javaeocontrol.jar
LOCALROOTLibrary/Frameworks/JavaFoundation.framework/Resources/Java/javafoundation.jar
LOCALROOTLibrary/Frameworks/JavaJDBCAdaptor.framework/Resources/Java/javajdbcadaptor.jar
LOCALROOTLibrary/Frameworks/JavaWOExtensions.framework/Resources/Java/JavaWOExtensions.jar
LOCALROOTLibrary/Frameworks/JavaWebObjects.framework/Resources/Java/javawebobjects.jar
LOCALROOTLibrary/Frameworks/JavaXML.framework/Resources/Java/javaxml.jar
/Local/Library/Frameworks/MyFramework1.framework/Resources/Java/myframework1jar
/Local/Library/Frameworks/MyFramework2.framework/Resources/Java/myframework2jar
Any idea ?
How replacement with environnement variable is working?
This archive was generated by hypermail 2.0.0 : Tue Oct 25 2005 - 09:44:23 EDT