Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/tfs/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
为什么javaDoc要求创建名称无效的java文件(package info.java)_Java_Intellij Idea_Javadoc_Intellij 14 - Fatal编程技术网

为什么javaDoc要求创建名称无效的java文件(package info.java)

为什么javaDoc要求创建名称无效的java文件(package info.java),java,intellij-idea,javadoc,intellij-14,Java,Intellij Idea,Javadoc,Intellij 14,我正在使用InteliJ Idea 14。对于javaDocs的使用,我试图创建包info.java(不是一个有效的名称,但这是必需的),但是IDE不允许使用该名称创建新的java文件。它说这不是一个有效的Java限定名 无论如何,我可以创建一个名为“package info.java”的新文件 这样做可以吗?或者还有别的办法吗 为什么javaDoc要求创建一个名称无效的java文件?请参阅文档: 要创建package-info.java文件,请执行以下步骤: 打开项目工具窗口(例如,视图|工具

我正在使用InteliJ Idea 14。对于javaDocs的使用,我试图创建
包info.java
(不是一个有效的名称,但这是必需的),但是IDE不允许使用该名称创建新的java文件。它说
这不是一个有效的Java限定名

无论如何,我可以创建一个名为“package info.java”的新文件

这样做可以吗?或者还有别的办法吗

为什么javaDoc要求创建一个名称无效的java文件?

请参阅文档:

要创建package-info.java文件,请执行以下步骤:

  • 打开项目工具窗口(例如,视图|工具窗口|项目)
  • 选择要为其创建包信息文件的包
  • 执行以下操作之一:
    • 选择
      文件
      |
      新建
      |
      包信息.java
    • 从关联菜单中选择
      New
      |
      package info.java
    • Alt+Insert
      并选择
      package info.java
  • 见文件:

    要创建package-info.java文件,请执行以下步骤:

  • 打开项目工具窗口(例如,视图|工具窗口|项目)
  • 选择要为其创建包信息文件的包
  • 执行以下操作之一:
    • 选择
      文件
      |
      新建
      |
      包信息.java
    • 从关联菜单中选择
      New
      |
      package info.java
    • Alt+Insert
      并选择
      package info.java

  • 是 啊我当时就是这么做的。谢谢你的提示。但是为什么呢?为什么javaDoc要求创建一个名称无效的java文件?@prime,因为这样可以保证它不会与类名冲突。请参阅Java语言规范:唯一带注释的
    package
    声明(如果存在)放在包含包源文件的目录中名为
    package info.Java
    的源文件中。此文件不包含名为
    package info.java的类的源代码;事实上,它这样做是违法的,因为
    包信息
    不是合法的标识符。是的。我当时就是这么做的。谢谢你的提示。但是为什么呢?为什么javaDoc要求创建一个名称无效的java文件?@prime,因为这样可以保证它不会与类名冲突。请参阅Java语言规范:唯一带注释的
    package
    声明(如果存在)放在包含包源文件的目录中名为
    package info.Java
    的源文件中。此文件不包含名为
    package info.java的类的源代码;事实上,它这样做是违法的,因为
    包裹信息
    不是一个合法的标识符。你的意思是更新Intelij Idea?但为什么投票被否决?如果有人能给你一个理由,也许是因为你在问之前没有研究过你的问题,你会感激的。如果您想真正理解为什么一种语言具有这样的特性,首先要看的是该语言的规范。这适用于任何PL,而不仅仅是Java。在这种情况下,JLS准确地解释了为什么它是这样设计的。链接的dup问答回答了您所有的问题。“可以吗?”、“有其他选择吗?”和“为什么?”。(对“为什么”的回答是阅读JLS中的基本原理…使用顶部答案提供的链接,这对您很有帮助。)@StephenC that package.html的问题不是问同样的问题,答案也不是这个问题的直接答案。您应该在这里发布一个答案,其中包含关于package-info.java的JLS“7.4.1.Named Packages”脚注的链接和副本,而不是将其标记为副本。此外,在未来,您可以考虑任何问题,可以通过阅读规范回答是一个问题,要求指出有关位置的规格。筛选手册很难,尤其是对新手。如果你知道在哪里可以找到一些东西,请帮忙指出。你的意思是更新Intelij的想法吗?但为什么投票被否决?如果有人能给你一个理由,也许是因为你在问之前没有研究过你的问题,你会感激的。如果您想真正理解为什么一种语言具有这样的特性,首先要看的是该语言的规范。这适用于任何PL,而不仅仅是Java。在这种情况下,JLS准确地解释了为什么它是这样设计的。链接的dup问答回答了您所有的问题。“可以吗?”、“有其他选择吗?”和“为什么?”。(对“为什么”的回答是阅读JLS中的基本原理…使用顶部答案提供的链接,这对您很有帮助。)@StephenC that package.html的问题不是问同样的问题,答案也不是这个问题的直接答案。您应该在这里发布一个答案,其中包含关于package-info.java的JLS“7.4.1.Named Packages”脚注的链接和副本,而不是将其标记为副本。此外,在未来,您可以考虑任何问题,可以通过阅读规范回答是一个问题,要求指出有关位置的规格。筛选手册很难,尤其是对新手。如果你知道在哪里可以找到什么东西,请帮忙指出。