Eclipse 內建的 Ant 支援可讓外掛程式依程式的方式執行 Ant 建置檔。
透過併入在 org.eclipse.ant.core 外掛程式中的 AntRunner 類別來完成
程式內的所有類別。
例如,由 org.eclipse.core.resources 外掛程式所提供的 eclipse.refreshLocal
作業,是 IResource.refreshLocal() 方法的封套。
在實際RCP應用中,搞不明白不能單獨運行,可能是plugin的依賴關沒搞清吧,
以後有空的時候來單獨測試及解決問題.
透過併入在 org.eclipse.ant.core 外掛程式中的 AntRunner 類別來完成
import org.eclipse.ant.core.AntRunner; import org.eclipse.core.runtime.IProgressMonitor; ... public void runBuild() { IProgressMonitor monitor = ... AntRunner runner = new AntRunner(); runner.setBuildFileLocation("c:/buildfiles/build.xml"); runner.setArguments("-Dmessage=Building -verbose"); runner.run(monitor); }
每一次在 Eclipse 中執行 Ant 建置檔,就會建立一個新的類別載入器平台提供若干有用且與工作區交談的 Ant 作業和內容。
可以和設為與工作區相同的 JRE 中建置的建置檔搭配使用這項作業為 IResource.refreshLocal() 方法的封套。範例:
<eclipse.refreshLocal resource="MyProject/MyFolder" depth="infinite"/>
- resource 是相對於工作區的資源路徑
- depth 可為下列其中一項:0、1 或 infinite
eclipse.incrementalBuild
這項作業為 IProject.build() 和 IWorkspace.build() 方法的封套。範例:
<eclipse.incrementalBuild/>
<eclipse.incrementalBuild project="MyProject"/>
- project 要建置的專案
eclipse.convertPath
將檔案系統路徑轉換成資源路徑,反之亦然。結果值已指定至給定的內容。範例:
<eclipse.convertPath fileSystemPath="${basedir}" property="myPath"/>
<eclipse.convertPath resourcePath="MyProject/MyFile" property="myPath"/>當您的外掛程式提供 Ant 作業和類型以及對其進行除錯時,作業和類型可存取所提供的外掛
程式內的所有類別。
例如,由 org.eclipse.core.resources 外掛程式所提供的 eclipse.refreshLocal
作業,是 IResource.refreshLocal() 方法的封套。
在實際RCP應用中,搞不明白不能單獨運行,可能是plugin的依賴關沒搞清吧,
以後有空的時候來單獨測試及解決問題.