使用eclipse運行maven web項目 插件/非插件

一.使用插件css

tomcat 8.5java

tomcat-users.xml中添加這一行就okweb

<user username="admin" password="admin" roles="manager-script"/>apache

maven的settings.xml在servers標籤中添加tomcat

<server>
<id>tomcatserver</id>
<username>admin</username>
<password>admin</password>
</server>mybatis

下圖是maven配置文件位置app

 在pom.xml中添加(path是你的項目名,注意和web.xml中保持一致)框架

 

 1 <plugin>
 2       <groupId>org.apache.tomcat.maven</groupId>
 3       <artifactId>tomcat7-maven-plugin</artifactId>
 4       <version>2.2</version>
 5       <configuration>
 6             <url>http://127.0.0.1:8080/manager/text</url>
 7             <server>tomcatserver</server>
 8             <path>/usermodule</path>
 9             <username>admin</username>
10             <password>admin</password>
11       </configuration>
12 </plugin>

接下來去tomcat的bin目錄下啓動tomcat,此步驟不作會出現cannot invoke tomcat manager,固然上面用戶名,密碼配錯也會有這個異常,若是啓動tomcat一閃而過,要麼是jdk沒配置對,要麼就是tomcateclipse

的server.xml中host標籤中包含錯誤的context,刪除便可,刪除時不要把</host>刪除webapp

第一次運行:clean package tomcat7:deploy,去項目目錄觀察下是否把resources下的文件打包進去,若是沒有添加如下配置

1 <resource>
2     <directory>src/main/resources</directory>
3     <includes>
4         <include>**/*</include> 5  </includes> 6 </resource>

若是使用了orm框架,好比mybatis,hibernate這種,src/main/java下一般會有XXX.xml的配置文件,想要被打包進去,還要添加

1 <resource>
2     <directory>src/main/java</directory>
3     <includes>
4         <include>**/*.xml</include> 5  </includes> 6 </resource>

接下來執行tomcat7:redeploy(熱部署)便可,若是添加了新的文件,執行clean package redeploy便可,這種方式日誌輸出在tomcat的命令框中,看起來不是很方便

聲明:tomcat7:run啓動了插件帶的tomcat而不是你配置的tomcat

 

二.使用eclipse啓動tomcat,加載maven web項目

tomcat 9

先添加好server,而後右鍵open(server已有項目,先remove後clean),把deploypath改爲tomcat的webapps路徑(serverpath測試了不修改也沒什麼問題),而後啓動

此時去tomcat的webapp下,項目中沒有隻有包的結構沒有class文件,致使一訪問就出現class not found,還有一點概率出現Illegal access: this web application instance has been stopped already

順序查看:

1.buildpath 中的source必須有java,resource

 2.deployment assembly要加入maven依賴

 3.project->build automaticlly開啓

4.若是修改了project facts中的dynamic web module的版本,必須在web.xml中修改頭部對應的version以及xsi:schemaLocation對應的尾部xsd版本

 

三.maven-war-plugin,maven-dependency-plugin

最初的想法,嘗試用這兩個插件直接打包到tomcat的webpps目錄下,配置以下

 1 <plugin>
 2     <groupId>org.apache.maven.plugins</groupId>
 3     <artifactId>maven-war-plugin</artifactId>
 4     <version>2.1.1</version>
 5     <configuration>
 6     <!--指定web.xml的路徑  -->
 7         <webXml>src\main\webapp\WEB-INF\web.xml</webXml>
 8         <!--指定jsp、js、css的路勁  -->
 9         <warSourceDirectory>src\main\webapp</warSourceDirectory>
10     </configuration>
11 </plugin>
12 
13 <!--打war包到指定的目錄下 --> 
14 <plugin>  
15     <groupId>org.apache.maven.plugins</groupId>  
16     <artifactId>maven-dependency-plugin</artifactId>  
17     <version>2.8</version>  
18     <executions>  
19         <execution>  
20             <id>copy-war</id>  
21             <phase>package</phase>  
22             <goals>  
23                 <goal>copy</goal>  
24             </goals>  
25             <configuration>  
26                 <artifactItems>  
27                     <artifactItem>  
28                         <groupId>${project.groupId}</groupId>  
29                         <artifactId>${project.artifactId}</artifactId>  
30                         <version>${project.version}</version>  
31                         <type>${project.packaging}</type>  
32                     </artifactItem>  
33                 </artifactItems>  
34               <!--   <outputDirectory>${dist.console.war.dir}</outputDirectory>   -->
35               <!--指定war包保存地址-->
36                 <outputDirectory>D:\apache-tomcat-9.0.24-eclipse\webapps</outputDirectory>  
37                 <includes>   
38                     <include>*.war</include>   
39                 </includes>  
40             </configuration>  
41         </execution>  
42     </executions>  
43 </plugin>

經過這種方式執行clean package打包後會在tomcat的webapps下生成了wa包,接下來啓動tomcat解壓後訪問

相關文章
相關標籤/搜索