在安装过程中,我执行了一个java类。 我将一些变量从我的install.xml文件中抛出到这个java类。
我的问题是我看不到将IzPack资源路径抛给这个类。 没有IzPack内置变量。
但是我知道它存储在某处,因为我把它交给了IzPack编译器:
“... \ IzPack \ bin \ compile”“... \ install.xml” -b thepathIwouldliketoget
谢谢!
答案 0 :(得分:0)
@ command-prompt:
C:\Program Files\IzPack\bin>compile -?
.:: IzPack - Version 4.3.5 ::.
.......
-> Command line parameters are : (xml file) [args]
(xml file): the xml file describing the installation
-h (IzPack home) : the root path of IzPack. This will be needed
if the compiler is not called in the root directory of IzPack.
Do not forget quotations if there are blanks in the path.
-b (base) : indicates the base path that the compiler will use for filenames
of sources. Default is the current path. Attend to -h.
只是为了澄清:-b <path-name>
并不完全是IzPack resource path
。如上所述,它是base path
专门用于解析其他文件路径。在上面的示例中,默认值将是当前目录,即C:\Program Files\IzPack\bin
。
现在,我没有对此进行测试,但可以通过属性baseDir
访问此路径。
有两个原因:
Apache Ant Integration
部分HERE将此属性指定为'baseDir'
。
分析命令行输入的文件CliAnalyzer.java
(找到它,以及其他源文件HERE)具有以下代码块:
if (commandLine.hasOption(ARG_BASEDIR)) {
baseDir = commandLine.getOptionValue(ARG_BASEDIR).trim();
}
可能base path
应该可以通过${baseDir} or $baseDir
访问。