Java 如何在IDEA中正确运行maven web项目?
我是使用maven和idea的新手。我通过了所有直观的步骤来运行web项目,但得到了404页(如果我在Idea中用作一个简单的web项目,这个应用程序工作得很好)。pom文件如下所示:Java 如何在IDEA中正确运行maven web项目?,java,maven,intellij-idea,Java,Maven,Intellij Idea,我是使用maven和idea的新手。我通过了所有直观的步骤来运行web项目,但得到了404页(如果我在Idea中用作一个简单的web项目,这个应用程序工作得很好)。pom文件如下所示: <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.home.myapp</groupId>
<artifactId>MyApp</artifactId>
<version>1.0-SNAPSHOT</version>
<packaging>jar</packaging>
<name>MyApp</name>
<url>http://maven.apache.org</url>
<properties>
<spring.version>3.1.1.RELEASE</spring.version>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>
<dependencies>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-core</artifactId>
<version>${spring.version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>${spring.version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-beans</artifactId>
<version>${spring.version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-web</artifactId>
<version>${spring.version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-jdbc</artifactId>
<version>${spring.version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-webmvc</artifactId>
<version>${spring.version}</version>
</dependency>
<dependency>
<groupId>commons-logging</groupId>
<artifactId>commons-logging</artifactId>
<version>1.1.1</version>
</dependency>
<dependency>
<groupId>commons-io</groupId>
<artifactId>commons-io</artifactId>
<version>2.3</version>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>servlet-api</artifactId>
<version>2.4</version>
</dependency>
<dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
<version>1.2.17</version>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>3.8.1</version>
<scope>test</scope>
</dependency>
</dependencies>
<build>
<pluginManagement>
<plugins>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>tomcat-maven-plugin</artifactId>
<configuration>
<server>apache-tomcat-7.0.25</server>
<url>http://localhost:8080/manager</url>
<path>/</path>
</configuration>
</plugin>
</plugins>
</pluginManagement>
4.0.0
com.home.myapp
MyApp
1.0-快照
罐子
MyApp
http://maven.apache.org
3.1.1.1发布
UTF-8
org.springframework
弹簧芯
${spring.version}
org.springframework
spring上下文
${spring.version}
org.springframework
春豆
${spring.version}
org.springframework
弹簧网
${spring.version}
org.springframework
SpringJDBC
${spring.version}
org.springframework
SpringWebMVC
${spring.version}
公用记录
公用记录
1.1.1
公地io
公地io
2.3
javax.servlet
servlet api
2.4
log4j
log4j
1.2.17
朱尼特
朱尼特
3.8.1
测试
org.codehaus.mojo
TomcatMaven插件
apache-tomcat-7.0.25
http://localhost:8080/manager
/
你能告诉我我的错吗?或者建议我写一篇文章,在那里我可以找到对此的解释 对idea不太确定,但通常web项目的打包类型是war,而不是jar 还研究maven war插件,以便知道要添加哪些文件以及要添加到哪些文件夹中
您可以通过使用maven原型创建一个示例应用程序来研究这一点。然后使用工具比较样本源和您自己的源 如果你有404,我想问题在于你试图访问应用程序的URL 尽管如此,还是要检查工件和libs的内容(Ctrl+Shift+Alt+s)。
另外,尝试将诸如
maven编译器插件
和maven war插件
之类的maven插件添加到您的pom.xml
中,正如其他人提到的,您需要一个war包。可以肯定的是,以maven原型开始您的项目,请参见
确保您可以构建一场战争:
mvn clean install
现在在IDEA中导入您的项目:文件,新项目,从外部模型导入项目,Maven,选择您的pom.xml 尝试将thimaven.apache.org更改为localhost:serverport/myapp这是一个web应用程序吗?如果是,则
元素的值应为war
。也许你想添加jetty或tomcat maven插件。谢谢Satya,但问题是remain@Satya
标记与web应用程序url无关。这只是项目所在地的URL。谢谢Augusto,但它没有帮助。他为什么要添加这些插件?在没有任何进一步澄清的情况下要求他包含这些插件是没有意义的。我已经添加了这些新插件,但是IDE将它们标记为错误-它在目录中找不到它们/I运行与repo1.maven.con的同步,但它仍然在更新。谢谢你的回答。我在执行mvn原型时遇到了一个MojoException,但遗憾的是它没有包含我忘记添加的明确消息。然而,mvn clean install提供了一个成功的构建。但是它并没有解决这个问题。如果mvn原型不起作用,我肯定会在继续之前检查并修复我的maven配置。您是否从现有的外部maven模型创建了一个新项目?之后,您需要一个新的运行配置,在其中定义应用程序的应用程序上下文,默认值为/。URL必须匹配,否则404将跟随。是的,我完全按照你说的做了,但我没有工作。我已经修改了问题中的pom。
mvn clean install