我正在尝试通过添加所需的项目构面以编程方式将java项目转换为动态Web项目。
这是我的代码:
IProjectFacet JAVA_FACET = ProjectFacetsManager.getProjectFacet("jst.java");
IProjectFacet WEB_FACET = ProjectFacetsManager.getProjectFacet("jst.web");
iFacetedProject.installProjectFacet(JAVA_FACET.getVersion("5.0"), null, monitor);
iFacetedProject.installProjectFacet(WEB_FACET.getVersion("2.4"), null, monitor);
正确添加构面,IDE将项目识别为Web项目。 我看到的问题是添加facet还会创建一个我不想要的EAR项目。
有没有办法抑制创建EAR并只将facet添加到我的项目中?
答案 0 :(得分:1)
为了避免产生耳朵,你可以试试这个:
IProjectFacet JAVA_FACET = ProjectFacetsManager.getProjectFacet("jst.java");
IProjectFacet WEB_FACET = ProjectFacetsManager.getProjectFacet("jst.web");
iFacetedProject.installProjectFacet(JAVA_FACET.getVersion("5.0"), null, monitor);
IDataModel aFacetInstallDataModel = DataModelFactory.createDataModel(new WebFacetInstallDataModelProvider());
aFacetInstallDataModel.setBooleanProperty(IJ2EEModuleFacetInstallDataModelProperties.ADD_TO_EAR, false);
iFacetedProject.installProjectFacet(WEB_FACET.getVersion("2.4"), aFacetInstallDataModel, monitor);
以同样的方式,你可以传递相同的功能自定义耳朵...