java - javac 命令是否自动创建包声明中指定的目录?

标签 java javac

在使用 Java 时,我一直使用 IDE,因此我对 javac 命令的了解并不多。我想知道这个:Java 是否按照 .java 文件包声明中的指定生成 .class 文件应放置的目录?让我澄清一下,假设您的桌面上有一个像这样的简单 .java 文件:

package com.deangrobler.test

public class Test {

    // ...

}

从桌面运行以下命令时:

javac Test.java

然后它会自动创建 com/deangrobler/test 目录并将 Test.class 文件放在其中吗?

最佳答案

来自文档 --> http://docs.oracle.com/javase/7/docs/technotes/tools/windows/javac.html 请参阅选项部分。

-d目录

设置类文件的目标目录。该目录必须已经存在; javac 不会创建它。如果类是包的一部分,则 javac 将类文件放在反射(reflect)包名称的子目录中,并根据需要创建目录。例如,如果指定 -d C:\myclasses 并且类名为 com.mypackage.MyClass,则类文件名为 C:\myclasses\com\mypackage\MyClass.class。 如果未指定 -d,则 javac 将每个类文件放在与生成它的源文件相同的目录中。

注意:-d 指定的目录不会自动添加到您的用户类路径中。

关于java - javac 命令是否自动创建包声明中指定的目录?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25116532/

相关文章:

java - 尽管使用了 setText 函数,但在 JTextArea 中没有显示

java - 为什么 array[idx++]+ ="a"在 Java 8 中增加 idx 一次,但在 Java 9 和 10 中增加两次?

java - 从 shell 编译和执行 Java 应用程序的约定?

java - 如何从命令行编译/运行 netbeans 项目?

java - 在 Java 中使用线程

java - 在 Java 中,有没有办法编写字符串文字而不必转义引号?

java - BIRT 报告查看器 - 自定义错误报告

java - 解码 ECDSA 失败,出现 : Exception in thread "main" java. security.SignatureException:错误解码签名字节

java - 从不同的目录编译java文件

java - ant javac任务使用哪个javac.exe?