2016-11-07 173 views
-1

這是我第二次嘗試用Maven構建項目,但它不工作......我不知道該怎麼做。Maven項目安裝不起作用

這裏是我的規格:

Apache Maven 3.3.9 (bb52d8502b132ec0a5a3f4c09453c07478323dc5; 2015-11-10T16:41:47+00:00) 
    Maven home: C:\Program Files\Apache\maven 
    Java version: 1.7.0_79, vendor: Oracle Corporation 
    Java home: C:\Program Files\Java\jdk1.7.0_79\jre 
    Default locale: en_GB, platform encoding: Cp1252 
    OS name: "windows 8.1", version: "6.3", arch: "amd64", family: "windows" 

這裏是我的pom.xml:

<?xml version="1.0" encoding="UTF-8"?> 
<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/maven-v4_0_0.xsd"> 
    <modelVersion>4.0.0</modelVersion> 

    <groupId>com.stormpath.samples</groupId> 
    <artifactId>stormpath-webapp-tutorial</artifactId> 
    <version>0.1.0</version> 
    <packaging>war</packaging> 

    <dependencies> 
     <dependency> 
      <groupId>com.stormpath.sdk</groupId> 
      <artifactId>stormpath-servlet-plugin</artifactId> 
      <version>1.1.1</version> 
     </dependency> 
     <dependency> 
      <groupId>javax.servlet</groupId> 
      <artifactId>javax.servlet-api</artifactId> 
      <version>3.1.0</version> 
      <scope>provided</scope> 
     </dependency> 
     <dependency> 
      <groupId>javax.servlet</groupId> 
      <artifactId>jstl</artifactId> 
      <version>1.2</version> 
     </dependency> 
     <dependency> 
      <groupId>ch.qos.logback</groupId> 
      <artifactId>logback-classic</artifactId> 
      <version>1.1.7</version> 
      <scope>runtime</scope> 
     </dependency> 
    </dependencies> 

    <build> 
     <plugins> 
      <plugin> 
       <groupId>org.apache.tomcat.maven</groupId> 
       <artifactId>tomcat7-maven-plugin</artifactId> 
       <version>2.2</version> 
       <configuration> 
        <path>/</path> 
       </configuration> 
      </plugin> 
     </plugins> 
    </build> 

</project> 

我運行命令: 「MVN全新安裝-e」,我最終得到這個錯誤:

Failed to execute goal org.apache.maven.plugins:maven-war-plugin:2.2:war (default-war) on project stormpath-webapp-tutorial: Error assembling WAR: webxml attribute is required (or pre-existing WEB-INF/web.xml if executing in update mode) -> [Help 1] 
org.apache.maven.lifecycle.LifecycleExecutionException: Failed to execute goal org.apache.maven.plugins:maven-war-plugin:2.2:war (default-war) on project stormpath-webapp-tutorial: Error assembling WAR: webxml attribute is required (or pre-existing WEB-INF/web.xml if executing in update mode) 
     at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:212) 
     at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:153) 
     at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:145) 
     at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:116) 
     at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:80) 
     at org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build(SingleThreadedBuilder.java:51) 
     at org.apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.java:128) 
     at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:307) 
     at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:193) 
     at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:106) 
     at org.apache.maven.cli.MavenCli.execute(MavenCli.java:863) 
     at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:288) 
     at org.apache.maven.cli.MavenCli.main(MavenCli.java:199) 
     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
     at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) 
     at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 
     at java.lang.reflect.Method.invoke(Method.java:606) 
     at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:289) 
     at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:229) 
     at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:415) 
     at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:356) 
Caused by: org.apache.maven.plugin.MojoExecutionException: Error assembling WAR: webxml attribute is required (or pre-existing WEB-INF/web.xml if executing in update mode) 
     at org.apache.maven.plugin.war.WarMojo.execute(WarMojo.java:193) 
     at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:134) 
     at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:207) 
     ... 20 more 
Caused by: org.codehaus.plexus.archiver.ArchiverException: webxml attribute is required (or pre-existing WEB-INF/web.xml if executing in update mode) 
     at org.codehaus.plexus.archiver.war.WarArchiver.initZipOutputStream(WarArchiver.java:148) 
     at org.codehaus.plexus.archiver.zip.AbstractZipArchiver.createArchiveMain(AbstractZipArchiver.java:309) 
     at org.codehaus.plexus.archiver.zip.AbstractZipArchiver.execute(AbstractZipArchiver.java:211) 
     at org.codehaus.plexus.archiver.AbstractArchiver.createArchive(AbstractArchiver.java:897) 
     at org.apache.maven.archiver.MavenArchiver.createArchive(MavenArchiver.java:582) 
     at org.apache.maven.plugin.war.WarMojo.performPackaging(WarMojo.java:243) 
     at org.apache.maven.plugin.war.WarMojo.execute(WarMojo.java:177) 
     ... 22 more 

我沒有得到錯誤信息的意思,因此我試圖在同一文件夾爲m創建一個文件夾,名爲WEB-INF y pom.xml和裏面的空白web.xml文件,但我仍然得到同樣的東西。

+0

加入這個插件看起來你可以嘗試添加到配置中創建WAR文件告訴它這是web.xml中。你把WEB-INF文件夾放在哪裏?它在主要/資源之下嗎? – duffymo

回答

1

嘗試在你的pom.xml

<plugin> 
    <artifactId>maven-war-plugin</artifactId> 
    <version>2.6</version> 
    <configuration> 
     <failOnMissingWebXml>false</failOnMissingWebXml> 
    </configuration> 
</plugin>