簡體   English   中英

如何將Maven依賴項作為類路徑庫添加到Eclipse插件運行時?

[英]How to add maven dependencies as classpath libraries to Eclipse plugin Runtime?

我正在開發一個eclipse插件,正在將其轉換為Maven項目。 我使用“配置->轉換為Maven項目”選項,並編寫了帶有適當依賴項的pom.xml文件以及對tycho和maven插件的引用。

<properties>
    <tycho.version>0.23.0</tycho.version>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>

<build>
    <sourceDirectory>src</sourceDirectory>
        <pluginManagement>
        <plugins>
            <plugin>
                <groupId>org.eclipse.tycho</groupId>
                <artifactId>tycho-p2-repository-plugin</artifactId>
                <version>${tycho.version}</version>
                <configuration>
                    <includeAllDependencies>true</includeAllDependencies>
                </configuration>
            </plugin>
        </plugins>
    </pluginManagement>
    <plugins>
        <plugin>
            <groupId>org.eclipse.tycho</groupId>
            <artifactId>tycho-maven-plugin</artifactId>
            <version>${tycho.version}</version>
            <extensions>true</extensions>
        </plugin>

        <plugin>
            <groupId>org.eclipse.tycho</groupId>
            <artifactId>target-platform-configuration</artifactId>
            <version>${tycho.version}</version>
            <configuration>
                <target>
                    <artifact>
                        <groupId>${project.groupId}</groupId>
                        <artifactId>${project.artifactId}</artifactId>
                        <version>${project.version}</version>
                    </artifact>
                </target>
                <environments>
                    <environment>
                        <os>linux</os>
                        <ws>gtk</ws>
                        <arch>x86</arch>
                    </environment>
                    <environment>
                        <os>linux</os>
                        <ws>gtk</ws>
                        <arch>x86_64</arch>
                    </environment>
                    <environment>
                        <os>win32</os>
                        <ws>win32</ws>
                        <arch>x86</arch>
                    </environment>
                    <environment>
                        <os>win32</os>
                        <ws>win32</ws>
                        <arch>x86_64</arch>
                    </environment>
                    <environment>
                        <os>macosx</os>
                        <ws>cocoa</ws>
                        <arch>x86_64</arch>
                    </environment>
                </environments>
            </configuration>
        </plugin>
        <plugin>
            <inherited>true</inherited>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-compiler-plugin</artifactId>
            <configuration>
                <source>1.6</source>
                <target>1.6</target>
            </configuration>
        </plugin>
    </plugins>
</build>

但是,即使我嘗試將Maven依賴庫添加到.classpath文件中,它也不會自動添加到項目的類路徑中,例如<classpathentry kind="var" path="M2_REPO/net/sf/jung/jung-api/2.0.1/jung-api-2.0.1.jar"/> (已配置M2_REPO類路徑變量),由於MANIFEST文件中缺少類,我仍然遇到異常。

在eclipse中是否可以在項目根目錄之外設置類路徑,如果可以,是否可以將maven依賴庫自動添加到項目的類路徑中?

eclipse插件僅將osgi包和插件作為其依賴項。 如果您將依賴項作為普通jar提供,它將不需要。 清單文件將包含在eclipse home的p2存儲庫,目標定義文件或eclipse站點中可用的插件和捆綁包。 因此,我建議您將Maven依賴項jar轉換為osgi捆綁包或插件,並將其作為對eclipse插件的依賴項添加,這樣您就不會在maven構建期間遇到任何錯誤。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM