gpt4 book ai didi

javac 不产生输出

转载 作者:行者123 更新时间:2023-12-02 02:01:51 24 4
gpt4 key购买 nike

我正在尝试使用 javac 从命令行编译 java 项目,但在命令行上没有得到任何输出。此外,不会生成 .class 文件。

我用来调用 javac 命令的确切语法如下:

javac @options @javaFiles

选项文件的内容如下:

-g
-verbose
-d classes
-classpath cp1;cp2;cp3

其中 cp1、2、3 等引用我的计算机上的 jar 文件。 javaFiles 文件包含我希望编译的 java 文件列表:

C:\path\to\dir\one.java
C:\path\to\dir\two.java

问题是命令行上没有输出(如果我漏拼了其中一个命令行开关,那么命令行上就会出现错误输出),并且类文件夹中没有生成 .class 文件。另外,如果我将“-Xstdout output.txt”开关添加到选项文件中并尝试编译。 javac 命令退出并创建 output.txt 文件,但文件中没有任何信息。

我的问题是:我是否使用了错误的语法来调用 javac?我应该如何更改它?

编辑:

我更改了 Jasper 的答案中提到的选项和 javaFiles 文件,但我得到了现在出现以下错误:

*__* javac @options @javaFiles
javac: file not found: com\compname\cloud\automation\portal\definitions\landing\LandingPage.java
Usage: javac <options> <source files>
use -help for a list of possible options

编辑2:

好的,这个问题与类路径上的 jar 之一有关。当该 jar 被删除时(一次删除每个 jar 的痛苦),一切都会正确编译并创建 .class 文件。

我仍然不确定为什么当这个 jar 位于类路径上时 javac 会默默地失败,即使使用了详细开关。

目前,我可以不使用这个 jar 。我感谢人们提供的帮助...

最佳答案

在第二个文件中,不使用完整路径名,而仅使用包基目录中的路径名。假设您的代码位于包 org.mypackage 中,并且源文件位于目录 C:\myproject\src\org\mypackage 中,请将其放入第二个文件中:

org\mypackage\One.java
org\mypackage\Two.java

在第一个文件中,添加 -sourcepath 选项:

-sourcepath C:\myproject\src

关于javac 不产生输出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8295538/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com