enunciate v1.26.2 ant タスクを使用して Java クライアント ライブラリを作成しようとしています。問題は、これを実行しようとするたびに、次の警告メッセージが表示されることです。
WARNING: Unknown artifact 'java.client.library'. Artifact will not be exported.
java-client enunciate jar がクラスパス上にあることを確認しましたが、enunciate は出力でそれを見つけたとさえ言っています。
enun:
Loading modules from the specified classpath....
Discovered module docs
Discovered module java-client
...
だから私は正確に何をすべきかわからない。私はグーグルで調べてみましたが、SOには発音のための質問がいくつかしかなく、私の質問に答えている人は誰もいないようです。これは、関連する行を含む私の ant スクリプトです。
<path id="enunciate.classpath">
<fileset dir="${lib.enunciate.dir}">
<include name="*.jar"/>
</fileset>
<fileset dir="${lib.dir}">
<include name="**/*.jar" />
</fileset>
<fileset dir="${java.home}">
<include name="lib/tools.jar"/>
</fileset>
</path>
<taskdef name="enunciate" classname="org.codehaus.enunciate.main.EnunciateTask">
<classpath refid="enunciate.classpath"/>
</taskdef>
<target name="enun" description="Run enunicate task on the rest services">
<enunciate basedir="${src.web.java.dir}">
<include name="**/*.java"/>
<classpath refid="enunciate.classpath"/>
<export artifactId="java.client.library" destination="${dist.client.dir}/rest/" />
<export artifactId="docs" destination="${dist.docs.rest.dir}/"/>
<javacArgument argument="-g"/>
</enunciate>
</target>
注: docs export が呼び出され、問題なく正しくエクスポートされます。含まれているコードは問題なくコンパイルされます。Ant スクリプトが java-client ライブラリをエクスポートしたくない理由がわかりません。私は、artifactId の名前を、java.client.library.binaries、java-client.library、enunciate-java-client など、いくつかの異なる値に変更しようとしました。enunciate.xml 構成ファイルを使用しようとしましたが、役に立たないようです。使用しようとしたxmlは次のとおりです。
<?xml version="1.0"?>
<enunciate label="full" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:noNamespaceSchemaLocation="http://enunciate.codehaus.org/schemas/enunciate-1.26.xsd">
<modules>
<java-client disabled="false" disableCompile="false" jarName="foo.jar"/>
<docs disabled="false" docsDir="dist/docs/rest/"/>
</modules>
</enunciate>