Я пытаюсь вызвать FindBugs изнутри Ant. Чтобы контролировать объем памяти, доступный для FindBugs, я решил не использовать ant-task. Проблема у меня есть сейчас, что я хочу передать несколько баночек в командной строке для FindBugs:Вызов FindBugs из Ant: передача списка файлов, разделенных пробелами, на java
java -jar .../findbugs.jar foo.jar bar.jar fie.jar
Однако, поскольку эти банки на самом деле Eclipse, плагины, я не знаю точное название поэтому мне нужен способ использовать подстановочный знак для получения списка. Это то, что я придумал:
<target name="findbugs">
<property name="findbugs.home" location="${user.home}/eclipse/findbugs" />
<path id="findbugs.input">
<fileset dir="${testDirectory}/eclipse/plugins">
<include name="my.plugins.*.jar" />
</fileset>
</path>
<path id="findbugs.auxinput">
<fileset dir="${testDirectory}/eclipse/plugins">
<include name="*.jar" />
<include name="**/*.jar" />
</fileset>
</path>
<java jar="${findbugs.home}/lib/findbugs.jar" fork="true">
<jvmarg value="-Xmx1048m" />
<arg value="-textui" />
<arg value="-output" />
<arg value="findbugs.xml" />
<arg value="-xml" />
<arg value="-exclude" />
<arg value="${basedir}/findbugsExclude.xml" />
<arg value="-auxclasspath" />
<arg pathref="findbugs.auxinput"/>
<arg pathref="findbugs.input" />
</java>
</target>
Однако findbugs.input
pathref является разделенный запятыми список банок, а не разделенных пробелами, как FindBugs хочет. Как получить список банок в виде списка, разделенного пробелами?
(Это, возможно, проще сделать с FindBugs муравьиный задачи. Я не могу сказать, из документации.)
работает для меня с ' 'и'