配置好下面的內容后,執行 run as -> tomcat7:run 或者tomcat6:run可以將maven的web應用在tomcat6/7里面運行 ,eclipse Indigo 版本默認tomcat:run是用tomcat6。
DelegatingFilterProxy cannot be cast to Filter
請在
settings.xml
- <pluginGroups>
- <pluginGroup>org.apache.tomcat.maven</pluginGroup>
- </pluginGroups>
pom.xml
- <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>
- <plugins>
- <plugin>
- <groupId>org.apache.tomcat.maven</groupId>
- <artifactId>tomcat6-maven-plugin</artifactId>
- <version>2.0-SNAPSHOT</version>
- <configuration>
- <path>/</path>
- </configuration>
- </plugin>
- <plugin>
- <groupId>org.apache.tomcat.maven</groupId>
- <artifactId>tomcat7-maven-plugin</artifactId>
- <version>2.0-SNAPSHOT</version>
- <configuration>
- <path>/</path>
- </configuration>
- </plugin>
- </plugins
過程中遇到了一個情況,就是打成war包放到webapps下面運行時正常 的,但是用tomcat:run會報錯:org.springframework.web.filter.DelegatingFilterProxy cannot be cast to javax.servlet.Filter;
檢查一下:
pom.xml文件編輯器(一般要裝插件才能看到)下面的dependency hierarchy 里面,在右邊框圖里面找到servlet-api.jar,選中后在左邊,右鍵->exclude maven artifact,去除依賴關系。