0

我正在开发一些 Eclipse 插件,这些插件需要像任何其他动态 Web 项目一样在服务器上运行、调试自定义 Eclipse 项目。

就像 Eclipse 中的动态 Web 项目一样,我创建了 Web 项目的自定义项目性质,我想使用 Eclipse 的 Run On Server 向导在像 tomcat 这样的服务器上部署和运行项目。所以基本上我想知道如何从自定义项目创建 IModuleArtifact 对象并使用eclipse的服务器向导部署它。

有人可以指导我正确的方向吗?谢谢。

4

1 回答 1

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);

然后使用 project ->properties->Deployment Assembly 更改部署设置以映射将进入 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);
        }
于 2013-10-11T12:57:20.243 回答