如何在ant脚本中引用javac的-s标志



我正在尝试使用ant脚本为一些JPA实体编译规范元模型类。我正在使用OpenJPA。我希望生成的文件位于一个子目录中,根据OpenJPA文档,我可以通过为javac指定-s选项来实现这一点。我现在尝试做这件事的方式是这样的:

<compilerarg value="-s c:buildfiles"/>

然而,我不断收到一个错误,上面写着:

javac: invalid flag: -s 
Usage: javac <options> <source files>

如果我这样做:

<compilerarg value="-version"/>

它告诉我正在使用1.6。如果我这样做:

<compilerarg value="-help"/>

它将-s列为有效选项。有人对我能做些什么来完成我想要做的事情有什么建议吗?非常感谢。

您有两个参数,它们之间有一个空格。你只需要把它们分开:

<compilerarg value="-s"/>
<compilerarg value="c:buildfiles"/>

目前,您正在解析单个arg"-s c:\buildfiles"。如果你运行

ant -verbose

你可以验证这一点-你会看到类似的东西:

  [javac] Compilation arguments:
    [javac] '-classpath'
    [javac] ''
    [javac] '-sourcepath'
    [javac] '/a/b/c'
    [javac] '-target'
    [javac] '1.5'
    [javac] '-g:none'
    [javac] '-s c:buildfiles'    <-- here is the problem
    [javac] '-source'
    [javac] '1.5'
    [javac] 
    [javac] The ' characters around the executable and arguments are
    [javac] not part of the command.

相关内容

  • 没有找到相关文章

最新更新