Tomcat Maven 插件有一个原型,用于通过具体示例展示各种特性。
使用已发布版本
mvn archetype:generate \ -DarchetypeGroupId=org.apache.tomcat.maven \ -DarchetypeArtifactId=tomcat-maven-archetype \ -DarchetypeVersion=2.2
使用 SNAPSHOT 版本
mvn archetype:generate \ -DarchetypeGroupId=org.apache.tomcat.maven \ -DarchetypeArtifactId=tomcat-maven-archetype \ -DarchetypeVersion=2.2 \ -DarchetypeRepository=https://repository.apache.org/content/repositories/snapshots/
您将看到以下输出(我们将使用名为 tomcat-sample 的项目)
.... [INFO] Using property: groupId = org.apache.tomcat.maven Define value for property 'artifactId': : tomcat-sample (project will be created in ./tomcat-sample ) ... cd tomcat-sample
注意:这是一个复杂的 hello world 示例 :-)
目标是公开一个名为 HelloService 的 REST 服务并在 Web 应用程序中使用它。
@Path( "HelloService" ) public interface HelloService { @Path( "sayHello/{who}" ) @GET @Produces( { MediaType.TEXT_PLAIN } ) String sayHello( @PathParam( "who" ) String who ); }
Apache Cxf 将用于公开实现作为 REST 服务。
现在,您有一个标准的多模块 Maven 项目布局