2009-06-25 58 views
1

我有一個名爲foo的功能,名爲foo的插件和一個單獨的片段foo.win32.x86。在功能上執行eclipse.buildscript任務未命中片段

我應該可以在一個功能的ant文件中執行對eclipse.buildscript的調用,並讓它爲功能,插件和片段創建一個build.xml;然而,我所得到的是功能和插件的build.xml。

foo的feature.xml的:

<?xml version="1.0" encoding="UTF-8"?> 
<feature 
    id="foo" 
    label="%featureName" 
    version="0.0.0.200906251500" 
    provider-name="%providerName" 
    plugin="foo"> 
<install-handler/> 

<description> 
    %description 
</description> 

<copyright> 
    %copyRight 
</copyright> 

<license url="license.html"> 
    %license 
</license> 

<plugin 
    id="foo" 
    download-size="0" 
    install-size="0" 
    version="0.0.0"/> 

<plugin 
    id="foo.win32.x86" 
    os="win32" 
    arch="x86" 
    download-size="0" 
    install-size="0" 
    version="0.0.0" 
    fragment="true"/> 

</feature> 

foo的插件MANIFEST.MF文件:

Manifest-Version: 1.0 
Bundle-ManifestVersion: 2 
Bundle-Name: %Plugin.name 
Bundle-SymbolicName: foo; singleton:=true 
Bundle-Version: 0.0.0.200906251500 
Bundle-Vendor: %Plugin.providername 
Bundle-Localization: plugin 
Eclipse-LazyStart: true 

foo的plugin.xml文件:

<?xml version="1.0"?> 
<?eclipse version="3.0"?> 
<plugin> 
    <!-- extension point stuff, blah --> 
</plugin> 

的foo.win32 .x86 MANIFEST.MF文件:

Manifest-Version: 1.0 
Bundle-ManifestVersion: 2 
Bundle-Name: %Plugin.name 
Bundle-SymbolicName: foo.win32.x86 
Bundle-Version: 0.0.0.200906251500 
Bundle-Vendor: %Plugin.providername 
Fragment-Host: foo;bundle-version="0.0.0.200906251500" 
Bundle-Localization: plugin 

任何人都可以解釋爲什麼我沒有得到片段的build.xml嗎?

如果我強制調用eclipse.buildscript的片段它的工作正常,但是這不是失敗的目的?

感謝

回答

2

您需要指定configInfo屬性。該值是「&」分隔的「os,ws,arch」三元組列表。如果腳本解析其中一個正在構建的配置,則僅爲特定於平臺的片段生成腳本。如果未指定configInfo,則默認爲「*,*,*」,意思是「平臺無關」(與foo.win32.x86不匹配)。

如:

<eclipse.buildscript 
     elements="[email protected]" 
     buildDirectory="${buildDirectory}" 
     baseLocation="${baseLocation}" 
     configInfo="win32,win32,x86" /> 

幫助頁面here,這可能會有幫助。

+0

感謝一堆......它的作品! – Michael 2009-06-26 15:13:48