目前,我正在尝试学习一些有关Maven的知识,并尝试使用IntelliJ IDEA。我建立了一个项目,并使用hibernate和mysql创建了jersey休息后端。我使用tomcat作为Web容器。一切正常,但有时我意识到IntelliJ项目设置中的某些设置已删除。也许与Maven有关...?
我遇到的两个问题:
有时,我在tomcat配置中设置的应用程序上下文消失了。
我在项目设置中添加了文件夹src / main / resources,因为我将休眠配置保存到了该文件夹中,因此maven在战争中部署了它。我还添加了src文件夹,因为有我所有的src文件。但是在重新启动一些tomcat之后,该目录也消失了,然后src文件夹中的所有文件都标记有红色图标。
这是我的pom:
<groupId>ExampleProject</groupId>
<artifactId>ExampleProject</artifactId>
<version>1.0</version>
<packaging>war</packaging>
<dependencies>
<dependency>
<groupId>com.sun.jersey</groupId>
<artifactId>jersey-server</artifactId>
<version>1.9</version>
</dependency>
<dependency>
<groupId>com.sun.jersey</groupId>
<artifactId>jersey-grizzly2</artifactId>
<version>1.9.1</version>
</dependency>
<dependency>
<groupId>com.sun.jersey</groupId>
<artifactId>jersey-json</artifactId>
<version>1.9</version>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.18</version>
</dependency>
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-core</artifactId>
<version>4.3.5.Final</version>
</dependency>
<dependency>
<groupId>org.hibernate.javax.persistence</groupId>
<artifactId>hibernate-jpa-2.1-api</artifactId>
<version>1.0.0.Final</version>
</dependency>
<dependency>
<groupId>ma.glasnost.orika</groupId>
<artifactId>orika-core</artifactId>
<version>1.4.0</version>
</dependency>
</dependencies>
有人可以帮我解释为什么会这样吗?
最佳答案
Maven Web应用程序中的“标准”布局为:
src/
main/
java/
resources/
webapp/
WEB-INF/
test/
java/
resources/
屏幕截图表明您的设置有些不同,这就是为什么IntelliJ可能会令人困惑并且行为异常。我建议您使用predefined archetype创建Maven项目,然后将其导入IntelliJ(使用
File -> Open
并选择根pom.xml
)。使用标准Maven布局我从来没有任何问题。此外,它遵循Maven关于配置的约定,对于那些习惯了标准Maven项目的人来说,它更容易理解。