United StatesChange Country, Oracle Worldwide Web Sites Communities I am a... I want to...
Bug ID: 6561870 Long javac compile lines fail due to command line length issues (agent compiles?)
6561870 : Long javac compile lines fail due to command line length issues (agent compiles?)

Details
Type:
Bug
Submit Date:
2007-05-24
Status:
Closed
Updated Date:
2011-04-23
Project Name:
JDK
Resolved Date:
2011-04-23
Component:
hotspot
OS:
generic
Sub-Component:
svc
CPU:
generic
Priority:
P3
Resolution:
Fixed
Affected Versions:
7
Fixed Versions:
hs20

Related Reports
Backport:
Backport:
Relates:
Relates:

Sub Tasks

Description
The javac compile lines in building the hotspot agent can fail on some Linux systems if the base directory of the workspace exceeds 55 characters or so. The command line length limit is being exceeded.

This makes it awkward for anyone building the openjdk or open hotspot in any arbitrary directory.

                                    

Comments
SUGGESTED FIX

This fix causes sa-jdi.jar to be rebuilt every time. See 6985848.
                                     
2010-09-17
EVALUATION

http://hg.openjdk.java.net/jdk7/hotspot/hotspot/rev/ea175c1b79ce
                                     
2010-09-15
EVALUATION

http://hg.openjdk.java.net/jdk7/hotspot-rt/hotspot/rev/ea175c1b79ce
                                     
2010-09-08
SUGGESTED FIX

See the attached 6561870-webrev-cr1.tgz for the proposed fix for
both Linux and Solaris after changes from code review round 0.
                                     
2010-09-04
SUGGESTED FIX

See the attached 6561870-webrev-cr0.tgz for the proposed fix
for both Linux and Solaris.
                                     
2010-09-01
EVALUATION

The description pretty much says it all.

Matthias Klose has provided a fix for this so I'll shepherd it
through JPRT into RT_Baseline.
                                     
2010-08-25
SUGGESTED FIX

The javac compiles should be done with the '@filename' option, where the list of filenames is in a file that is read in.
And you can't just echo "all filenames" > filename, because that echo line would be too long too.
You need to somehow create this filename without having really long command lines.
                                     
2007-05-24



Hardware and Software, Engineered to Work Together