Opened 6 years ago

Closed 6 years ago

#222 closed enhancement (invalid)

Indirect specification of Java parameter lists

Reported by: taf Owned by:
Priority: major Milestone: Enhanced
Component: general Version: 1.6.0 Build 27 GA5
Severity: medium Keywords: platform command line limits indirect options


I'm upgrading from Java 1.4 to Java 6 by way of OpenJDK6. It seems that use of environmental variables (like CLASSPATH) is now discouraged by the Java community and that command line options are to be used instead. In trying to accomplish this, I've run into some platform limitations: the command line on ECS 2.0 seems to be limited to approx. 256 characters. This is not enough to specify the complete classpath needed in some cases (TCPIP configuration notebook in particular).

Some implementations of the JVM allowed the launcher's (JAVA.EXE) to be specified indirectly:

java.exe -cp @classpathfile classtorun

where the @ character identified a file containing a list of classpath elements.

Is such a facility available for the ECS implementation of OpenJDK6? (I've looked in the doc but haven't found anything so far).

Change History (1)

comment:1 Changed 6 years ago by dmik

  • Resolution set to invalid
  • Status changed from new to closed

OpenJDK's java.exe doesn't support the @ notation for the -cp option or for anything else. You should still use CLASSPATH (or JAVA_TOOL_OPTIONS to specify any option that you would normally place on the command line) to overcome the command line length limitation.

On eCS this limitation is about 1024 characters for CMD.EXE and about 32K characters (or 64K, I don't recall exactly) as a total maximum if you start a process directly with DosExecPgm. If you claim that you have a case which fails on 256 characters with our OpenJDK, please feel free to open a new ticket for that specific issue and provide your test case so that we can reproduce it here.

Note: See TracTickets for help on using tickets.