Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/maven/6.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
使用maven,资源文件夹不会在生成类文件的同一级别生成_Maven - Fatal编程技术网

使用maven,资源文件夹不会在生成类文件的同一级别生成

使用maven,资源文件夹不会在生成类文件的同一级别生成,maven,Maven,我的目录结构是 src/ - main/ - java/ - com/ - resources/ // Folder where I have kept my properties file - class1.java - class2.java 当我试图使用maven构建JAR时,资源文件夹被跳过,我只剩下这个结构 src/ - main/ - java/ - com/ - class1.class - c

我的目录结构是

src/
- main/
  - java/
    - com/
      - resources/  // Folder where I have kept my properties file
      - class1.java
      - class2.java
当我试图使用maven构建JAR时,资源文件夹被跳过,我只剩下这个结构

src/
- main/
  - java/
    - com/
      - class1.class
      - class2.class
我知道maven使用传统的dir。资源的结构为
src/main/resources
。但我希望我的资源文件夹与生成类文件的文件夹处于同一级别

在这方面谁能帮我一下吗


提前感谢。

关键是您所说的-您希望您的资源与生成类文件的级别相同。这并不意味着它们必须从同一个文件夹开始。它们必须具有相同的包结构。您可以按照正常的Maven文件布局约定执行此操作,如下所示

- src
  - main
  | - java
  |   - com
  |     - mycompany
  |       - Class1.java
  |       - Class2.java
  | - resources  
  |   - com
  |     - mycompany
  |       - someResources.properties
  |       - anotherResource.jpg
请注意,
/src/main/java
/src/main/resources
下的目录/包结构是相同的。当
maven编译器插件
maven资源插件
完成运行后,结果将是

- target
  - classes
    - com
      - mycompany
        - Class1.class
        - Class2.class
        - someResources.properties
        - anotherResource.jpg

这就是你想要的。

为什么你想要一种不同于Maven所说的方式?这种方式的优势是什么?为什么属性文件以
.java
结尾?如果是编译的,则它不是属性文件。属性文件应该在运行时处理,以便在编译后可以更改。