0

他の動的Webプロジェクトと同様に、サーバー上でカスタムEclipseプロジェクトを実行、デバッグする必要があるいくつかの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);

次に、プロジェクト -> プロパティ -> 展開アセンブリを使用して展開設定を変更し、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 に答える