我有一个项目很快就要到期了,一切都很好地结合在一起,但是 java 类路径正在变得严重。我会尽量清楚和彻底地解释情况。
所以我们使用 Javacc 来编写编程语言。javacc 文件编译成几个 java 文件。Parser.java 文件包括对其他生成的 java 文件的引用和调用。因此,在生成之后,我们编译 Parser.java 文件。问题是我们遇到了很多错误,包括无法识别对其他 java 文件以及我们自己的文件的调用。我们在课堂讨论板上询问了我们的问题,教授回答说“你需要在你的类路径中包含类文件”。好的,很好,所以问题是,我们如何做到这一点?基本上,我们有一个目录,其中包含生成的 java 文件和我们的其他帮助文件。
那么,我们尝试了什么?
我尝试更改我的 .bashrc (Ubuntu) 文件以包含正确的类路径,但这不起作用。IE
CLASSPATH=Home/project
(就像我在文件中的语法一样)
我试过编译执行
javac -cp . Parser.java
和
javac -cp "." Parser.java
两者都不起作用。
我试图在我们的文件目录中编辑 xml(我认为是 xml).classpath 文件。还是不行。
不知何故,我能够在我拥有的一个目录中编译 Parser.java(我们最终创建了多个目录,其中包含相同的文件,但徒劳无功)但是当我尝试运行时
java -cp . Parser.java
或者
java Parser.java
它说它找不到 main 并抛出(我相信,它在我的另一台计算机上)ClassNotFound 或 ClassNotDefined 异常(类似的,它无法在 Parser 文件中找到 main,即使它在那里)。
我们尝试将包减速和导入语句添加到我们的文件中,但似乎没有任何效果。
基本上:如何成功更改类路径,以便可以在我的机器上编译和运行我的 java 文件(都在一个目录中而不是 jarred)?
谢谢您的帮助。我非常感激。