我正在尝试从类的混合生成enunciate文档,所有JAX-RS都注释,一些编码的java,一些在clojure中。
我构建了一个maven项目,它只依赖于包含服务类的war文件:
<build>
<plugins>
<plugin>
<groupId>org.codehaus.enunciate</groupId>
<artifactId>maven-enunciate-plugin</artifactId>
<version>1.27</version>
<configuration>
<configFile>src/conf/enunciate.xml</configFile>
<additionalClasspathEntries>
${settings.localRepository}/com/ws/scholar/0.96-SNAPSHOT/scholar-0.96-SNAPSHOT.war
</additionalClasspathEntries>
</configuration>
<executions>
<execution>
<goals>
<goal>assemble</goal>
</goals>
</execution>
</executions>
<dependencies>
<dependency>
<groupId>com.ws</groupId>
<artifactId>scholar</artifactId>
<version>0.96-SNAPSHOT</version>
<type>war</type>
</dependency>
<dependency>
<groupId>javax.ws.rs</groupId>
<artifactId>javax.ws.rs-api</artifactId>
<version>2.0</version>
</dependency>
</dependencies>
</plugin>
</plugins>
</build>
我无法获得任何服务文档。
运行mvn enunciate:docs -X时,我看到我的课程“注意到”:
[DEBUG]注意到/.m2/repository/com/ws/scholar/0.96-SNAPSHOT/scholar-0.96-SNAPSHOT.war.中的WEB-INF.classes.com.ws.scholar.resources.ClientResource类p>
有人可以为我的配置提供指导或更正吗?
答案 0 :(得分:0)
不幸的是,你不能只是将一个战争作为一个依赖项加入,并让其中的类在类路径中被选中。战争不是一个罐子。
相反,除了战争之外,您可能还需要使用maven-war-plugin
的{{3}}参数将类导出为jar。然后你就可以依赖这个罐子了:
<dependency>
<groupId>com.ws</groupId>
<artifactId>scholar</artifactId>
<version>0.96-SNAPSHOT</version>
<classifier>classes</classifier>
</dependency>