我正在开发一些eclipse插件,它需要在服务器上运行,调试自定义eclipse项目,就像任何其他动态Web项目一样。
就像eclipse中的动态web项目一样,我创建了一个Web项目的自定义项目性质&我想使用eclipse的Run On Server向导在tomcat等服务器上部署和运行项目。所以基本上我想知道如何从自定义项目创建IModuleArtifact对象并使用eclipse的服务器向导进行部署。
有人可以指导我正确的方向吗? 感谢。
答案 0 :(得分:1)
据我所知,您有一个Web项目,但结构与动态Web项目不同。 因此,您可以使用以下 -
将Web项目性质添加到项目中 IFacetedProject facetedProject = ProjectFacetsManager.create(project, true, null);
IFacetedProjectWorkingCopy workingCopy = facetedProject.createWorkingCopy();
IProjectFacet webFacet = ProjectFacetsManager.getProjectFacet("jst.web");
IProjectFacetVersion defaultWebFacet = webFacet.getDefaultVersion();
workingCopy.addProjectFacet(defaultWebFacet);
然后使用项目更改部署设置 - > properties->部署程序集 映射将进入WAR文件的项目资源。 您也可以使用以下代码以编程方式配置它 -
IVirtualComponent rootComponent = ComponentCore
.createComponent(project);
IFolder buildXwtFolder =//Source Folder;
IVirtualFolder rootFolder = rootComponent.getRootFolder();
IVirtualFolder subFolder = rootFolder.getFolder("Deploy path");
subFolder.createLink(buildXwtFolder.getProjectRelativePath(), 0,
null);
if (subFolder instanceof ITaggedVirtualResource) {
((ITaggedVirtualResource) subFolder).tagResource(
buildXwtFolder.getProjectRelativePath(),
null, null);
}