通过JDTAPI以编程方式访问Java项目的build.properties
有没有办法通过JDTAPI以编程方式访问Java项目的通过JDTAPI以编程方式访问Java项目的build.properties,java,eclipse,eclipse-plugin,eclipse-jdt,eclipse-pde,Java,Eclipse,Eclipse Plugin,Eclipse Jdt,Eclipse Pde,有没有办法通过JDTAPI以编程方式访问Java项目的build.properties?类似于IJavaProject.getRawClasspath()的东西,只用于build.properties 如果我有一个IProject/IJavaProject,我可以像这样添加一行JDT API(通过JDT API调用): 之前: source.. = src/ output.. = bin/ 之后: source.. = src/,\ xtend-gen/ output..
build.properties
?类似于IJavaProject.getRawClasspath()
的东西,只用于build.properties
如果我有一个IProject
/IJavaProject
,我可以像这样添加一行JDT API(通过JDT API调用):
之前:
source.. = src/
output.. = bin/
之后:
source.. = src/,\
xtend-gen/
output.. = bin/
这是一个PDE对象而不是JDT,因此需要使用PDE API。关于PDE API的文档很少 build.properties由
org.eclipse.pde.core.build.IBuildModel
接口描述。您可以通过以下方式获得此信息:
IProject project = ... project ...
IPluginModelBase base = PluginRegistry.findModel(project);
IBuildModel buildModel = PluginRegistry.createBuildModel(base);
您可以使用
IBuildEntry entry = buildModel.getBuild().getEntry(IBuildEntry.BIN_INCLUDES);
ibildentry
的addToken
方法似乎是添加到条目的方法
要保存,需要检查模型是否是IEditableModel
的实例,并调用IEditableModel.save
方法
if (buildModel instanceof IEditableModel) {
((IEditableModel)buildModel).save();
}
这是一个PDE对象,而不是JDT对象,因此任何API都不会出现在JDT API中?