Я документирую некоторые веб-сервисы Java и поддерживаемые типы данных. Есть две службы, которые я не хочу документировать. Как правильно исключить небольшое количество файлов из задачи Ant javadoc?
Я пробовал несколько итераций, используя файлы или наборы файлов, вложенные в sourcepath или sourcefiles с различными комбинациями include и exclude.
Базовая цель, которую я правильно определил, документирует все мои веб-сервисы:
<target name="javadoc.webservices" description="Generate the documentation for companyproject webservices">
<delete dir="docs/webservices" failonerror="true"/>
<mkdir dir="docs/webservices"/>
<javadoc packagenames="com.company.project.webservices,com.company.project.models.*"
defaultexcludes="yes"
destdir="docs/webservices"
author="true"
version="true"
use="true"
windowtitle="company project Webservices">
<doctitle><![CDATA[<h1>company project Webservices</h1>]]></doctitle>
<bottom><![CDATA[<i>Copyright © 2011 company Corp. All Rights Reserved.</i>]]></bottom>
<sourcepath>
<path location="companyproject-ejb/src/java"/>
<path location="companyproject-models/src"/>
</sourcepath>
<classpath>
<path refid="companyproject-models.module.classpath"/>
<path refid="companyproject-ejb.module.classpath"/>
<pathelement location="${companyproject-ejb.output.dir}"/>
</classpath>
</javadoc>
</target>
Некоторые варианты, которые я пробовал, включают:
<sourcefiles>
<fileset dir="companyproject-ejb/src/java">
<include name="**/*.java"/>
<exclude name="**/*IntegrationTestWS*, **/*NhinInterfaceWS*"/>
</fileset>
</sourcefiles>
Это ошибки с javadoc.exe CreateProcess error=87, The parameter is incorrect
<sourcepath>
<fileset dir="companyproject-ejb/src/java">
<include name="**/*.java"/>
<exclude name="**/*IntegrationTestWS*, **/*NhinInterfaceWS*"/>
</fileset>
</sourcepath>
Та же ошибка, что и у исходных файлов, но в ней много сообщений о skipping <somefile> since it is no directory
.
Я пробовал похожие варианты, используя <files>
вместо <fileset>
.
Я думаю, что мне не хватает базового понимания того, как включает / исключает работы. Спасибо за вашу помощь!
AlexR не совсем понял, но подошел ближе. Я удалил <sourcepath>
и добавил
<fileset dir="./Companyproject-ejb/src/java/">
<include name="com/Company/project/webservices/*"/>
<exclude name="**/IntegrationTestWS*"/>
<exclude name="**/NhinInterfaceWS*"/>
</fileset>
<packageset dir="./Companyproject-models/src/">
<include name="com/Company/project/models/**"/>
</packageset>
Наличие только набора файлов привело к тому, что javadoc пожаловался, что не может найти никаких пакетов. Packageset ведет себя как dirset, поэтому он не может исключать отдельные файлы, только каталоги. В этом случае мне удалось определить набор пакетов для одного набора документов и набор файлов для ограниченного набора и обойти его.