idea不编译除了.java之外的文件 IDEA不编译除了.java之外的文件的解决办法(推荐)
CoVerMySoulTB 人气:0— 遇到问题
今天在IDEA里面运行项目的时候报了一个错,如下图所示:
— 找到问题根源
其实控制台给出的错误信息提示说的很明显:类加载器加载文件的时候没有找到指定的文件,于是我看了一下项目编译的二进制文件,如下图所示:
我们可以很清楚的看到我的源文件sixbit和threebit目录和目录下的文件并没有被编译到target二进制文件里面去,所以项目在运行的时候要用到sixbit和threebit目录下的文件时,需要去编译号的classes里面去找相对应的二进制文件,发现根本没有,于是就报错了。但是我在MyEclipse里面运行是完全没有问题的,但是在idea里面就不行,于是经过查阅网上资料,发现IDEA是不会编译.java之外的文件。因为这是maven构建的项目,构建Maven项目的时候,如果没有进行特殊的配置,Maven会按照标准的目录结构查找和处理各种类型文件。
src/main/java和src/test/java
这两个目录中的所有*.java文件会分别在comile和test-comiple阶段被编译,编译结果分别放到了target/classes和targe/test-classes目录中,但是这两个目录中的其他文件都会被忽略掉。
src/main/resouces和src/test/resources
这两个目录中的文件也会分别被复制到target/classes和target/test-classes目录中。
— 解决问题
Maven默认只识别src-main-resources下的资源文件,如果在maven工程中资源文件放在src-main-java下,我们需让Maven知道。在pom.xml中,根节点中project中加入如下在pom.xml里面加入如下代码:
<build> <resources> <resource> <directory>src/main/java</directory> <includes> <include>**/*.*</include> </includes> </resource> </resources> </build>
编译整个项目,target文件里面生成了相对应的文件,如下图所示:
总结
加载全部内容