File APIs for Java Developers
Manipulate DOC, XLS, PPT, PDF and many others from your application.
The moose likes Beginning Java and the fly likes Classpath problem. Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login
JavaRanch » Java Forums » Java » Beginning Java
Bookmark "Classpath problem." Watch "Classpath problem." New topic

Classpath problem.

Argenzul Kurosawa

Joined: Nov 09, 2011
Posts: 2
Greetings, Java Ranch.

I am compiling some ANTLR3 grammars and trying to link them with my main class, but to no avail.

Due to constraints imposed by a higher (insert evil adjective) authority, I am forced to use the following folder structure:

  • project/build/es/ull/etsii/pl/analyzers/ -> ANTLR3 generated .java & .class lie here.
  • project/lib/antlr-3.4-complete.jar
  • project/src/es/ull/etsii/pl/analyzers/ -> Grammar files lie here.
  • project/src/es/ull/etsii/pl/ -> My main class.

  • Just to be precise, the grammar files are Analex and Anasyn, located in the package When compiled, they are placed inside the build folder, within the same package.

    The main class imports both Analex and Anasyn specifically.

    I use ANT to manage the project, and compiling the grammar files works. Sadly compiling the main class fails because it cannot find the symbols for the lexer and the parser I already compiled, even though I am giving the correct classpath (I suppose). The baffling part is that, I have used the same build.xml to compile other projects with the same folder structure. The only difference is that I have migrated from ANTLR2 to ANTLR3.

    This is the target that fails:

    And this is the ant log:

    I hope I haven't forgotten something and that any of you guys can help me.

    By the way, removing or altering the package structure is not an option.
    Argenzul Kurosawa

    Joined: Nov 09, 2011
    Posts: 2
    I am a complete idiot.

    ANTLR3 changed everything and the main class was struggling to locate a constructor that is not defined anymore. Change a few sentences in the main class and problem solved.
    Campbell Ritchie

    Joined: Oct 13, 2005
    Posts: 46397
    Argenzul Kurosawa wrote:I am a complete idiot. . . ..
    No you aren’t. You solved an awkward problem there.

    And welcome to the Ranch
    I agree. Here's the link:
    subject: Classpath problem.
    It's not a secret anymore!