包的默认目录

时间:2013-04-11 07:16:20

标签: java

我是java的新手我想知道java中包的默认目录是什么?我的意思是如果我编译一个包含一个包语句的java文件,并且我在-d命令中不使用javac选项编译它,那么包将在哪里创建?例如

package test;
class Test{}

并使用javac Test.java进行编译 那么包将在哪里创建?

由于

3 个答案:

答案 0 :(得分:4)

如果未指定-d,则将在与源文件相同的目录中创建类文件。

这很好如果你已经将你的源存储在与你的包结构相匹配的目录结构中(如果你对你的源文件和类文件住在同一个地方感到高兴),你的源代码结构没有匹配你的包结构,你基本上会在无法合理使用它们的位置使用类文件。

除了快速一次性(通常是Stack Overflow :)代码之外,我个人会提出以下建议:

  • 避免使用默认包
  • 将源代码保存在与包结构匹配的目录结构中(例如,根src
  • 将类文件生成为单独的目录结构(例如,根目录为binoutclasses

(抱歉,误读了这个问题。)

答案 1 :(得分:3)

-d命令中的

javac选项用于指定生成类文件的位置,如果不指定,则.class文件将在同一目录中创建您的.java文件所在的位置。

答案 2 :(得分:0)

未指定包时,没有创建目录! 将直接在输出文件夹

中创建所有.class个文件
public class A{}

如果将其编译为输出文件夹,

output/a.class已创建