FIX: Large String Literals Can Cause Compiler Errors

ID: Q156921

The information in this article applies to:

SYMPTOMS

The Java Language Compiler (jvc) generates various compiler errors when a string literal exceeds 1000 characters on one line.

WORKAROUND

You can avoid having string literals that exceed 1000 characters by breaking your string literal into multiple lines and using the + (plus sign) operator to combine the strings.

STATUS

Microsoft has confirmed this to be a problem in the Microsoft products listed at the beginning of this article. This problem has been fixed in Visual J++ 1.1.

MORE INFORMATION

Steps to Reproduce Behavior

The following sample code generates one or more of the following errors:

  test.java(2162720,1071) : error J0010: Syntax error
  test.java(2162720,1072) : error J0014: Expected ')'
  test.java(2359392,0) : error J0029: Invalid character
  test.java(2752554,2752554) : fatal error J0001: Internal Compiler Error

// test.java
void test {
  public static void main(String args[]) {
   System.out.println("****************************************************
*************************************... for about 1500 characters");
  }
}

// workaround.java
void workaround {
  public static void main(String args[]) {
    System.out.println("****************************************"+
       "********************************************************"+
       "**************************... for about 1500 characters");
  }
}

REFERENCES

For the latest Knowledge Base articles and other support information on Visual J++ and the SDK for Java, see the following page on the Microsoft Technical Support site:

   http://support.microsoft.com/support/visualj/ 
   http://support.microsoft.com/support/java/ 

Keywords          : kbCommandLine 
Version           : 1.0
Platform          : WINDOWS
Issue type        : kbbug
Solution Type     : kbfix

Last Reviewed: November 12, 1998