当我用Eclipse创建新的Maven项目时,我发现 有时 当我在srcmainjavabeans或srcmainjavaservlets文件夹中创建我的第一个类时,出现了 "servletsbeans不是Java源文件夹 "的错误。
这种情况完全是随机发生的,如果我用完全相同的程序创建几个项目,我最终会有一个没有这个问题的项目。
我找到的解决方法是将servletsbeans文件夹声明为java源代码,这样就不用创建多个项目。但这并不完美,因为我的类没有放在包里,所以我的代码不能直接共享,也不能使用一些Spring的功能。似乎在 "Java构建路径 "中可以找到一个解决方案,但我没有设法让它工作。
这个问题从几年前就发生在几个Eclipse或Java版本中(也有Tomcat版本,但似乎没有关系)。
除了 "使用为Java源码 "之外,你有什么办法解释为什么会出现这个问题(最令人惊讶的是它是随机发生的),或者有其他的解决方案吗?
缺省情况下,maven会将 "srcmainjavabeans "和 "srcmainjava "两个文件夹中的 src/main/resources
作为资源根。你可以尝试定义 resources
的目录。
<build>
...
<resources>
<resource>
<directory>[your folder here]</directory>
</resource>
</resources>
...
</build>
或者,你应该在Eclipse UI中右键点击该目录并设置为Source Directory Root。(就像在Idea中一样)