我想从内联代码片段和其他文件内容的混合内容生成文件。类似的东西:
<target name="generate-js-function">
<concat destfile="mycode.js">
<header trimleading="yes">
// begin auto generated
var create = function() {
function createHtmlSnippet1() {
</header>
<fileset file="snippet1.js"/>
<header>
}
</header>
<header trimleading="yes">
// begin auto generated
var create = function() {
function createHtmlSnippet2() {
</header>
<fileset file="snippet2.js"/>
<header>
}
</header>
return '' + createHtmlSnippet1() + createHtmlSnippet2();
}
// end auto generated
</header>
</concat>
</target>
AFAIK,只能有一个header
/ footer
,那么正确的做法是什么?
更新:如果问题中的任何内容不明确 - 请询问 - 我会愉快地澄清。
答案 0 :(得分:1)
将每个内联JS部分写入自己的文件,并连接所有文件。
您可以使用echo任务从ant构建文件动态写入临时文件,然后连接代码段文件和临时文件。
答案 1 :(得分:1)
对于内嵌代码段,您可以使用string
resource:
<concat destfile="mycode.js">
<string>
// begin auto generated
var create = function() {
function createHtmlSnippet1() {
</string>
<fileset file="snippet1.js"/>
<string>
}
</string>
...
</concat>
唯一的缺点是它不支持trimleading
属性,但它允许您在构建文件中内嵌代码。