Java 带有tomcat 5.5的Maven webapp

Java 带有tomcat 5.5的Maven webapp,java,tomcat,maven,Java,Tomcat,Maven,我正在学习Maven,并使用以下命令创建了一个示例WebApp: mvn archetype:generate \ -DgroupId=org.obliquid \ -DartifactId=test \ -DarchetypeArtifactId=maven-archetype-webapp \ -Dversion=1.0-SNAPSHOT 然后跑: mvn package mvn tomcat:run 它可以工作,但使用的是tomcat 6.0.29,如何更改为使用tomcat 5.5

我正在学习Maven,并使用以下命令创建了一个示例WebApp:

mvn archetype:generate \
-DgroupId=org.obliquid \
-DartifactId=test \
-DarchetypeArtifactId=maven-archetype-webapp \
-Dversion=1.0-SNAPSHOT
然后跑:

mvn package
mvn tomcat:run
它可以工作,但使用的是tomcat 6.0.29,如何更改为使用tomcat 5.5

更新:我尝试了版本为5.5.23的@splash suggestion,因为最新版本的5.5.33似乎在Maven回购主版本中不可用。从这个示例中,我删除了catalina ha、tribes和jasper jdt,并保留了其余的(catalina、el api、jasper、jasper el、jsp api、servlet api、coyote、dbcp)。正在尝试打包:


[错误]未能在项目yyy上执行目标:无法解析项目xxx的依赖项:yyy:war:1.0-SNAPSHOT:无法解析以下工件:org.apache.tomcat:catalina:jar:5.5.23,org.apache.tomcat:el-api:jar:5.5.23,org.apache.tomcat:jasper:jar:5.5.23,org.apache.tomcat:jasper jdt:jar:5.5.23,org.apache.tomcat:jsp-api:jar:5.5.23,org.apache.tomcat:servlet-api:jar:5.5.23,org.apache:coyote:jar:5.5.23,org.apache.tomcat:dbcp:jar:5.5.23:在本地存储库中缓存了org.apache.tomcat:catalina:jar:5.5.23,在mvnsearch的更新间隔结束或强制更新之前,不会重新尝试解析->[Help 1]

我想这个示例应该可以回答您的问题:


对于Tomcat 5.5,您必须调整版本(例如
5.5.23
),并选择正确的依赖项(group
Tomcat
,而不是
org.apache.Tomcat
)。

不可能Tomcat的基础依赖项在版本6下不可用

谢谢,不幸的是它不起作用。详细信息太长,无法发表评论,因此我已更新了我的answer.oops,我没有遵循此部分“(组tomcat而不是org.apache.tomcat)。”->现在我尝试更改pom.xml中出现的所有内容。它变得更好了:[错误]未能在项目yyy上执行目标:无法解析项目xxx的依赖项:yyy:war:1.0-SNAPSHOT:无法解析以下工件:tomcat:el-api:jar:5.5.23、tomcat:jasper:jar:5.5.23、tomcat:jasper-el:jar:5.5.23、tomcat:jasper-jdt:jar:5.5.23、,tomcat:dbcp:jar:5.5.23:在mvnsearch()->[Help 1]中找不到工件tomcat:el api:jar:5.5.23我不熟悉tomcat的包结构,但是这些工件在5.5中不存在,正如您在。只需删除它们,看看会发生什么。我想它对Tomcat 5.5不起作用:[错误]无法执行目标org.codehaus.mojo:Tomcat maven插件:1.1:run(默认cli)在项目测试webapp上:执行org.codehaus.mojo:tomcat maven插件的默认cli:1.1:run失败:执行org.codehaus.mojo:tomcat maven插件时遇到API不兼容:1.1:run:java.lang.NoSuchMethodError:org.apache.tomcat.util.IntrospectionUtils.setProperty(Ljava/lang/Object;Ljava/lang/String;Ljava/lang/String;)V--所以我放弃了,我将只安装一个本地的tomcat并尝试使用tomcat:我已经放弃了这个,但是当我尝试的时候,我已经删除了catalina ha。无论如何,我也认为这是不可能的。我用一个非Maven控制的tomcat解决了这个问题。此外,我仍在试图说服客户升级他们的超级旧版Tomcat安装,可能很快他们就会:-)