我有一些xml文件在源文件夹沿着与java文件。Intellij Idea没有将它们复制到目标文件夹。我希望这些xml文件与目标中的类一起沿着。Eclipse做得很好。有谁能告诉我如何在Intellij Idea中实现这一点吗?
qco9c6ql1#
如果像我一样,另一个答案不能解决你的问题-如果IDEA认为你的项目是一个Maven模块(或者曾经是),而它不是,它会像这样工作。您可以通过关闭项目,编辑.iml文件以删除isMavenModule属性,重新打开并重建来修复此问题:<moduleorg.jetbrains.idea.maven.project.MavenProjectsManager.isMavenModule="true"type="JAVA_MODULE" version="4">
<module
org.jetbrains.idea.maven.project.MavenProjectsManager.isMavenModule="true"
type="JAVA_MODULE" version="4">
lfapxunr2#
在其默认配置中,IDEA应该将源目录中的任何xml文件复制到目标目录中。其他工具可能不会。所以这个答案是假设你是通过IDEA的内部构建/制作来制作项目的。如果使用maven(或gradle),您应该将资源放在src/main/resources中,而不是**src/main/java中,正如工程师Dollery在他/她的评论中提到的那样。如果您使用的是IDEA构建,但它仍然没有复制它们,那么您可以检查一个设置。进入 * 设置>构建,执行,开发>编译器 *。在顶部的 * 配置器 * 设置对话框中有一个“资源模式”文本字段。这将定义IDEA将复制和不复制的文件。默认条目为:
src/main/resources
src/main/java
!?*.java !?*.form !?*.class !?*.groovy !?*.scala !?*.flex !?*.kt !?*.clj !?*.aj
它只是一套否定模式的东西 * 不 * 复制。所以应该复制XML文件。检查此设置,看看其中是否有防止xml文件被复制的内容。
aamkag613#
其他的答案,关于“资源模式”和编辑.iml文件,没有解决我的问题,所以继续四处寻找。我发现解决我问题的方法是:打开文件-项目结构在项目设置下,选择模块在Sources下,将源代码树展开为src\main\resources,并标记为:资源和src\test\resources标记为:测试资源并按OK在执行了上述步骤之后,当我通过Idea Run Configuration运行一个类时,我看到我的 *.xml from src\main\resources现在被复制到target\classes。
3条答案
按热度按时间qco9c6ql1#
如果像我一样,另一个答案不能解决你的问题-
如果IDEA认为你的项目是一个Maven模块(或者曾经是),而它不是,它会像这样工作。您可以通过关闭项目,编辑.iml文件以删除isMavenModule属性,重新打开并重建来修复此问题:
<module
org.jetbrains.idea.maven.project.MavenProjectsManager.isMavenModule="true"
type="JAVA_MODULE" version="4">
lfapxunr2#
在其默认配置中,IDEA应该将源目录中的任何xml文件复制到目标目录中。其他工具可能不会。所以这个答案是假设你是通过IDEA的内部构建/制作来制作项目的。如果使用maven(或gradle),您应该将资源放在
src/main/resources
中,而不是**src/main/java
中,正如工程师Dollery在他/她的评论中提到的那样。如果您使用的是IDEA构建,但它仍然没有复制它们,那么您可以检查一个设置。进入 * 设置>构建,执行,开发>编译器 *。在顶部的 * 配置器 * 设置对话框中有一个“资源模式”文本字段。这将定义IDEA将复制和不复制的文件。默认条目为:
它只是一套否定模式的东西 * 不 * 复制。所以应该复制XML文件。检查此设置,看看其中是否有防止xml文件被复制的内容。
aamkag613#
其他的答案,关于“资源模式”和编辑.iml文件,没有解决我的问题,所以继续四处寻找。
我发现解决我问题的方法是:
打开文件-项目结构
在项目设置下,选择模块
在Sources下,将源代码树展开为src\main\resources,并标记为:资源
和src\test\resources标记为:测试资源并按OK
在执行了上述步骤之后,当我通过Idea Run Configuration运行一个类时,我看到我的 *.xml from src\main\resources现在被复制到target\classes。