2017-04-02 25 views
0

我正在開發一個基於maven的web項目,使用myeclipse。 現在,我在測試我的項目。 Project Structure:爲什麼當我使用maven構建myeclipse web項目時,它不會將「test」包複製到tomcat中?

但是當我將項目部署到tomcat 7時,發現一個問題。 也就是說,在tomcat7/webapps/partysys中,沒有「com.partysys.test」包但有「com.party.core」包!爲什麼?我想知道!因爲沒有com.party.test,所以當我啓動tomcat7時,它會出錯。

l配置pom.xml將我的項目自動部署到tomcat7。

<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.partysys</groupId> 
    <artifactId>party</artifactId> 
    <packaging>war</packaging> 
    <version>0.0.1-SNAPSHOT</version> 
    <name>party Maven Webapp</name> 
    <url>http://maven.apache.org</url> 
    <dependencies> 
     <dependency> 
      <groupId>junit</groupId> 
      <artifactId>junit</artifactId> 
      <version>4.10</version> 
      <scope>test</scope> 
     </dependency> 
     <!-- Struts2 --> 
     <dependency> 
      <groupId>org.apache.struts</groupId> 
      <artifactId>struts2-core</artifactId> 
      <version>2.3.24</version> 
     </dependency> 

     <dependency> 
      <groupId>org.apache.struts</groupId> 
      <artifactId>struts2-spring-plugin</artifactId> 
      <version>2.3.24.1</version> 
     </dependency> 
     <dependency> 
      <groupId>org.hibernate</groupId> 
      <artifactId>hibernate-core</artifactId> 
      <version>4.2.2.Final</version> 
     </dependency> 
     <dependency> 
      <groupId>org.springframework</groupId> 
      <artifactId>spring-core</artifactId> 
      <version>4.2.4.RELEASE</version> 
     </dependency> 

     <dependency> 
      <groupId>org.springframework</groupId> 
      <artifactId>spring-beans</artifactId> 
      <version>4.2.4.RELEASE</version> 
     </dependency> 

     <dependency> 
      <groupId>org.springframework</groupId> 
      <artifactId>spring-orm</artifactId> 
      <version>4.2.4.RELEASE</version> 
     </dependency> 


     <dependency> 
      <groupId>org.springframework</groupId> 
      <artifactId>spring-web</artifactId> 
      <version>4.2.4.RELEASE</version> 
     </dependency> 

     <!-- ApplicationContextInitializer --> 
     <dependency> 
      <groupId>org.springframework</groupId> 
      <artifactId>spring-context</artifactId> 
      <version>4.2.4.RELEASE</version> 
     </dependency> 
     <dependency> 
      <groupId>org.aspectj</groupId> 
      <artifactId>aspectjweaver</artifactId> 
      <version>1.8.7</version> 
     </dependency> 

     <dependency> 
      <groupId>mysql</groupId> 
      <artifactId>mysql-connector-java</artifactId> 
      <version>5.1.26</version> 
     </dependency> 

     <dependency> 
      <groupId>c3p0</groupId> 
      <artifactId>c3p0</artifactId> 
      <version>0.9.1.2</version> 
     </dependency> 
     <dependency> 
      <groupId>commons-dbcp</groupId> 
      <artifactId>commons-dbcp</artifactId> 
      <version>1.4</version> 
     </dependency> 


     <dependency> 
      <groupId>log4j</groupId> 
      <artifactId>log4j</artifactId> 
      <version>1.2.16</version> 
     </dependency> 
     <dependency> 
      <groupId>org.slf4j</groupId> 
      <artifactId>slf4j-api</artifactId> 
      <version>1.6.1</version> 
     </dependency> 
     <dependency> 
      <groupId>org.slf4j</groupId> 
      <artifactId>slf4j-nop</artifactId> 
      <version>1.6.4</version> 
     </dependency> 
     <dependency> 
      <groupId>javassist</groupId> 
      <artifactId>javassist</artifactId> 
      <version>3.11.0.GA</version> 
     </dependency> 
     <dependency> 
      <groupId>javax.servlet</groupId> 
      <artifactId>javax.servlet-api</artifactId> 
      <version>3.0.1</version> 
     </dependency> 
     <dependency> 
      <groupId>javax.servlet.jsp</groupId> 
      <artifactId>javax.servlet.jsp-api</artifactId> 
      <version>2.3.1</version> 
     </dependency> 
    </dependencies> 

    <build> 
    <finalName>partysys</finalName> 
    <pluginManagement> 
     <plugins> 
      <plugin> 
       <groupId>org.apache.maven.plugins</groupId> 
       <artifactId>maven-compiler-plugin</artifactId> 
       <version>3.2</version> 
       <configuration> 
        <source>1.8</source> 
        <target>1.8</target> 
       </configuration> 
      </plugin> 
      <plugin> 
        <groupId>org.apache.maven.plugins</groupId> 
        <artifactId>maven-war-plugin</artifactId> 
        <version>2.4</version> 
        <configuration> 
         <warSourceDirectory>src/main/webapp</warSourceDirectory> 
         <warName>party</warName> 
         <failOnMissingWebXml>false</failOnMissingWebXml> 
        </configuration> 
      </plugin> 
      <plugin> 
       <groupId>org.apache.tomcat.maven</groupId> 
       <artifactId>tomcat7-maven-plugin</artifactId> 
       <version>2.2</version> 
       <configuration> 
        <path>/${project.build.finalName}</path> 
        <server>tomcat7</server> 
        <username>admin</username> 
        <password>admin</password> 
        <url>http://localhost:8425/manager/text</url> 
        </configuration> 
      </plugin> 
     </plugins> 
    </pluginManagement> 
    </build> 
    <repositories> 
     <repository> 
      <id>people.apache.snapshots</id> 
      <url> 
       http://repository.apache.org/content/groups/snapshots-group/ 
      </url> 
      <releases> 
       <enabled>false</enabled> 
      </releases> 
      <snapshots> 
       <enabled>true</enabled> 
      </snapshots> 
     </repository> 
    </repositories> 
    <!-- 插件庫 --> 
    <pluginRepositories> 
     <pluginRepository> 
      <id>apache.snapshots</id> 
      <name>Apache Snapshots</name> 
      <url> 
       http://repository.apache.org/content/groups/snapshots-group/ 
      </url> 
      <releases> 
       <enabled>false</enabled> 
      </releases> 
      <snapshots> 
       <enabled>true</enabled> 
      </snapshots> 
     </pluginRepository> 
    </pluginRepositories> 
</project> 

行家/ conf目錄/ settings.xml中:

<server> 
     <id>tomcat7</id> 
     <username>admin</username> 
     <password>admin</password> 
    </server> 

的tomcat/conf目錄/ tomcat的-users.xml中:

<role rolename="tomcat"/> 
    <role rolename="manager"/> 
    <role rolename="manager-gui"/> 
    <role rolename="manager-script" /> 
    <role rolename="admin-gui"/> 
    <role rolename="manager-jmx"/> 
    <user username="tomcat" password="tomcat" roles="tomcat,manager,manager-script,admin-gui" /> 
    <user username="admin" password="admin" roles="manager-script,manager-jmx" /> 

回答

0

我的猜測是,一些Maven插件是弄不清你包名稱(測試),並不包括它到你的最終戰爭/罐子。

兩個建議:1)重構你的包名稱。你能把它從com.partysys.test更改爲com.partysys.check嗎? (或其他)2)審查你的有效絨球。

在日食中,雙擊你的pom.xml。其中,它將向您展示一個有效的POM,即將使用的POM。查看它並嘗試查找它是否包含與測試相關的一些說明(surefire插件)。

相關問題