解析java参数的通配符



我目前正在为一个rcp应用程序构建pde。在构建期间,我想执行一个.jar,它需要我在rcp应用程序中使用的所有插件的路径。问题是所有插件的名字后面都有一个版本。例如:com.ibm.icu_52.1.1.v201501240615.jar

.jar不支持参数中的通配符,所以我尝试使用filelist和pathconvert:

<filelist id="plugins.jars"
    dir="${eclipse.pdebuild.home}.."
    files="com.ibm.icu*.jar,org.eclipse.equinox.simpleconfigurator*.jar"
/>
<pathconvert pathsep=";" property="plugins" refid="plugins.jars"/>
<java jar="Programm.jar"
        fork="true"
        failonerror="true">
        <arg value="${plugins}" />
</java>

这样做的问题是*无法解决。

[java] Info: Setting additionally referenced classes (C:Program Files (x86)eclipse_rcppluginscom.ibm.icu*.jar;C:Program Files (x86)eclipse_rcppluginsorg.eclipse.equinox.simpleconfigurator*.jar).
[java] Error : Classpath file C:Program Files (x86)eclipse_rcppluginscom.ibm.icu*.jar does not exist

有谁知道我该如何解决这个问题吗?

任何帮助都是感激的!

最诚挚的问候,安迪

用文件集代替:

<fileset dir="${eclipse.pdebuild.home}" id="plugins.jars"
  includes="com.ibm.icu*.jar,org.eclipse.equinox.simpleconfigurator*.jar/>
<!-- simple echo -->
<echo>${toString:plugins.jars}</echo>
<pathconvert pathsep=";" property="plugins" refid="plugins.jars"/>

使用','或空白作为分隔符

相关内容

  • 没有找到相关文章