Actually the issue is not Jikes so much as Runtime.exec, I think.
-- Conor MacNeill [EMAIL PROTECTED] Cortex eBusiness http://www.cortexebusiness.com.au > -----Original Message----- > From: Ken Wood [mailto:[EMAIL PROTECTED] > Sent: Friday, 14 July 2000 11:40 > To: [EMAIL PROTECTED] > Subject: Re: javac Task Using Jikes with Large Number of Files > > > Seems to me the solution is to gripe to jikes' developers > about the problem. If jikes users have to break their > build into 'bundles', then they are forced to think and > deal with dependencies manually. Kinda defeats the > purpose of having Ant handle the dependencies, > eh? > > Conor MacNeill wrote: > > > There is an issue (on my todo list) about sending too many > compile files to > > Jikes since it seems to overflow the capabilities of the Runtime.exec > > system. The limit is something like 300 or 380, I can't > remember exactly and > > its probably system dependent. Try breaking your compile into smaller > > bundles. > > > > -- > > Conor MacNeill > > [EMAIL PROTECTED] > > Cortex eBusiness > > http://www.cortexebusiness.com.au > > > > > -----Original Message----- > > > From: Paul Hodgetts [mailto:[EMAIL PROTECTED] > > > Sent: Friday, 14 July 2000 11:14 > > > To: [EMAIL PROTECTED] > > > Subject: javac Task Using Jikes with Large Number of Files > > > > > > > > > I'm trying to compile a source tree with the javac task. I have > > > set build.compiler=jikes. The target XML looks like this: > > > > > > <target name="build_java" depends="init"> > > > <mkdir dir="${escrow.classes}"/> > > > <javac > > > srcdir="${escrow.source}" > > > destdir="${escrow.classes}" > > > includes="com/escrow/**" > > > classpath="${build.classpath}" > > > debug="on" > > > /> > > > </target> > > > > > > The resulting set of files number 402 source files. When I run > > > the build, I get (sorry for the long wrapped lines, but that's > > > what comes out): > > > > > > BUILD FAILED > > > > > > build.xml:50: Error running Jikes compiler > > > java.io.IOException: CreateProcess: jikes -Xstdout -d > > > D:\EscrowSystemV2\classes -classpath > > > D:\EscrowSystemV2\classes;D:\EscrowSystemV2\classes;D:\Software\jd > > > k1.2.2\jre > > > \lib\rt.jar;D:\Software\jaxp1.0.1\jaxp.jar;D:\Software\jaxp1.0.1\p > > > arser.jar; > > > D:\Software\javamail-1.1.3\mail.jar;D:\Software\jaf-1.0.1\activati > > > on.jar;D:\ > > > Software\WebLogic\lib\weblogic451sp9.jar;D:\Software\WebLogic\clas > > > ses;D:\Sof > > > tware\WebLogic\lib\weblogicaux.jar;D:\Software\WebLogic\lib;D:\Sof > > > tware\WebL > > > ogic\license;D:\Software\junit3.2\junit.jar;D:\Software\CyberSourc > > > e\cdkjava1 > > > 2-3300\cdkjava3300.jar;D:\Software\jdk1.2.2\jre\lib\rt.jar;D:\Soft > > > ware\jaxp1 > > > .0.1\jaxp.jar;D:\Software\jaxp1.0.1\parser.jar;D:\Software\WebLogi > > > c\lib\webl > > > ogic451sp9.jar;D:\Software\WebLogic\classes;D:\Software\WebLogic\l > > > ib\weblogi > > > caux.jar;D:\Software\WebLogi > > > at java.lang.Win32Process.create(Native Method) > > > at java.lang.Win32Process.<init>(Win32Process.java:64) > > > at java.lang.Runtime.execInternal(Native Method) > > > at java.lang.Runtime.exec(Runtime.java:272) > > > at java.lang.Runtime.exec(Runtime.java:219) > > > at org.apache.tools.ant.taskdefs.Jikes.compile(Jikes.java:40) > > > at > > > org.apache.tools.ant.taskdefs.Javac.doJikesCompile(Javac.java, > > > Compiled Code) > > > at org.apache.tools.ant.taskdefs.Javac.execute(Javac.java, > > > Compiled Code) > > > at org.apache.tools.ant.Target.execute(Target.java, > > > Compiled Code) > > > at org.apache.tools.ant.Project.runTarget(Project.java:708) > > > at org.apache.tools.ant.Project.executeTarget(Project.java, > > > Compiled Code) > > > at org.apache.tools.ant.Project.executeTargets(Project.java, > > > Compiled Code) > > > at org.apache.tools.ant.Main.runBuild(Main.java, > Compiled Code) > > > at org.apache.tools.ant.Main.main(Main.java:107) > > > > > > > > > I suspect I'm overloading the command line with too much stuff once > > > all 402 source file names are added. I can run fine with about 200 > > > source files, but not 400. Using the JDK compiler works fine with > > > 402 source files, but it's much slower than Jikes. > > > > > > Is there something I'm doing wrong? Should I leave off the includes > > > attribute (I think it's redundant since srcdir point there anyway)? > > > How can I get less added to the Jikes command line? > > > > > > I notice I've got double entries in the classpath, probably because > > > they are in my environment classpath and I feed them in via the > > > classpath= attribute. I want to make sure the build uses the correct > > > classpath, so I want it specified in the build file. But I need some > > > classpath just to run ant, and there is a fair amount of duplication. > > > How do I get round the duplicate classpath entries? > > > > > > Thanks in advance for any tips, pointers, or ideas. > > > > > > -Paul > > > > > > > >
