我只是想仔细检查,是否有人发现或正在使用Tomcat 7插件?如果没有,是否有人有兴趣帮我启动并运行?
我想要另一种快速替代Glassfish的方法,JBoss AS 6.0对于快速模型仍然有点沉重。
沃尔特
答案 0 :(得分:41)
它对我有用,如下所示。
我的setting.xml
<server>
<id>local_tomcat</id>
<username>ray</username>
<password>password</password>
</server>
我的插件配置
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>tomcat-maven-plugin</artifactId>
<configuration>
<server>local_tomcat</server>
<url>http://localhost:8080/manager/text</url>
</configuration>
</plugin>
我的tomcat-users.xml
<role rolename="manager-gui"/>
<role rolename="manager-script"/>
<user password="password" roles="manager-gui, manager-script" username="ray"/>
答案 1 :(得分:13)
我使用Apache的官方 Tomcat7 Maven插件,如下所示:
<plugin>
<groupId>org.apache.tomcat.maven</groupId>
<artifactId>tomcat7-maven-plugin</artifactId>
<version>2.0</version>
<configuration>
<path>/${project.artifactId}</path>
<port>8080</port>
</configuration>
</plugin>
并运行它:mvn tomcat7:run
答案 2 :(得分:8)
在Google代码上有t7mp - Tomcat 7 Maven插件。
Cargo(及其Cargo Maven2插件)也支持Tomcat 7(这是CARGO-790)。
Apache Tomcat Maven Plugin 2.0-beta-1支持Tomcat 7。
答案 3 :(得分:7)
使用maven货物,您可以通过以下方式配置项目:
<plugin>
<groupId>org.codehaus.cargo</groupId>
<artifactId>cargo-maven2-plugin</artifactId>
<version>1.0.6</version>
<configuration>
<container>
<containerId>tomcat7x</containerId>
<type>installed</type>
<home>${catalina.home}</home>
</container>
<configuration>
<type>existing</type>
<home>${catalina.home}</home>
</configuration>
<deployer>
<type>installed</type>
<deployables>
<deployable>
<groupId>${project.groupId}</groupId>
<artifactId>${project.artifactId}</artifactId>
<type>war</type>
</deployable>
</deployables>
</deployer>
</configuration>
</plugin>
不要忘记配置catalina.home
属性
您可以使用以下方式部署它:
mvn cargo:deploy
答案 4 :(得分:7)
Apache Tomcat团队开发了Tomcat Maven Plugin 7插件。
目前,您必须签出源并将其安装到本地存储库。 之后,您可以在pom的插件部分中使用它:
<plugin>
<groupId>org.apache.tomcat.maven</groupId>
<artifactId>tomcat7-maven-plugin</artifactId>
<version>2.0-SNAPSHOT</version>
<executions>
<execution>
<id>start-tomcat</id>
<phase>compile</phase>
<goals>
<goal>run</goal>
</goals>
<configuration>
<path>/</path>
<serverXml>src/main/tomcatconf/server.xml</serverXml>
</configuration>
</execution>
</executions>
</plugin>
答案 5 :(得分:5)
我连续三天遇到这个错误后,这是我的解决方案:
您用于连接的用户至少需要角色管理器脚本。 在/conf/tomcat-users.xml
中<role rolename="manager-script"/>
<user username="test" password="test" roles="manager-script"/>
在您的pom.xml中,包含以下插件
<plugin>
<groupId>org.apache.tomcat.maven</groupId>
<artifactId>tomcat7-maven-plugin</artifactId>
<version>2.0</version>
<configuration>
<url>http://server.url:8080/manager/text</url>
<path>/YourApp</path>
<username>test</username>
<password>test</password>
</configuration>
</plugin>
与我在互联网上发现的相反,您不需要编辑您的maven setting.xml。 tomcat7-maven-plugin可以直接在configuration-tag
中配置url-tag的一个词:我测试了后缀
其中只有/ manager / text工作
我的版本:
答案 6 :(得分:2)
我正在为我的嵌入式tomcat实例使用tomcat7-maven-plugin。这是我配置它的方式。由于我的应用程序需要jaas身份验证,我也可以在设置中提供。
<plugin>
<groupId>org.apache.tomcat.maven</groupId>
<artifactId>tomcat7-maven-plugin</artifactId>
<configuration>
<!-- http port -->
<port>8080</port>
<path>/gcs-explorers</path>
<contextFile>${basedir}/src/main/webapp/META-INF/context.xml</contextFile>
<addWarDependenciesInClassloader>true</addWarDependenciesInClassloader>
<systemProperties>
<java.security.auth.login.config>${basedir}/conf/jaas.config</java.security.auth.login.config>
</systemProperties>
<url>http://127.0.0.1:8080/manager/html</url>
<username>admin</username>
<password>admin</password>
<addContextWarDependencies>true</addContextWarDependencies>
<addWarDependenciesInClassloader>true</addWarDependenciesInClassloader>
<configurationDir>${basedir}</configurationDir>
</configuration>
<dependencies>
<dependency>
<groupId>com.google.protobuf</groupId>
<artifactId>protobuf-java</artifactId>
<version>2.2.0</version>
<type>jar</type>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>com.company.package.jaas</groupId>
<artifactId>gcs-jaas</artifactId>
<version>0.0.1-SNAPSHOT</version>
<type>jar</type>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>com.company.gcs</groupId>
<artifactId>package-file-share</artifactId>
<version>0.0.1-SNAPSHOT</version>
<type>war</type>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>com.oracle</groupId>
<artifactId>ojdbc6</artifactId>
<version>11.2.0.3</version>
<scope>runtime</scope>
</dependency>
</dependencies>
</plugin>
答案 7 :(得分:0)
实际上,标准插件适合我。我只需要在tomcat用户中创建角色管理器脚本,并将url参数更改为http://localhost:8080/manager/html
以使其正常工作:
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>tomcat-maven-plugin</artifactId>
<configuration>
<url>http://localhost:8080/manager/html</url>
<server>local</server>
<path>/${project.artifactId}</path>
<update>true</update>
</configuration>
</plugin>
答案 8 :(得分:-1)
对于Tomcat 7,
第1步: 服务器的模块选项卡添加
Document base: <PATH>\Apache-Tomcat-7.0.0\webapps\manager
Path: /manager
第2步: 将POM更新为:
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>tomcat-maven-plugin</artifactId>
<configuration>
<url>http://localhost:8080/manager/text</url>
<update>true</update>
<warFile>target/${project.artifactId}-${project.version}.war</warFile>
<path>/${project.artifactId}</path>
<username>tomcat_user</username>
<password>tomcat_password</password>
</configuration>
</plugin>