簡體   English   中英

Maven裝配罐中的Datanucleus JDO

[英]Datanucleus JDO in maven assembly jar

我使用maven組裝包創建了一個整體罐。 包含了datanucleus軟件包,但是由於沒有維護OSGI結構(plugins.xml和META-INF / META-INF.MD),所以出現了錯誤。 關於stackoverflow([問題]: Datanucleus,JDO和可執行jar-如何執行? )的答案未提供有關如何創建單個可部署jar的答案。

有誰知道我可以使用哪些Maven指令來確保OSGI結構?

因此,問題在於將所有內容打包到一個整體的jar中是OSGI結構被其他jar的OSGI結構所覆蓋。 整體jar的好處是只有一個文件可以推送到服務器,但是沒有必要(因為我使用的是capistrano來推送到服務器)

取而代之的是,將罐子復制到最終構建目錄中會更容易。 Heroku的Java設置有一個完美的例子:

https://devcenter.heroku.com/articles/java

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" 
     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
     xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.example</groupId>
<version>1.0-SNAPSHOT</version>
<artifactId>helloworld</artifactId>
<dependencies>
    <dependency>
        <groupId>org.eclipse.jetty</groupId>
        <artifactId>jetty-servlet</artifactId>
        <version>7.6.0.v20120127</version>
    </dependency>
    <dependency>
        <groupId>javax.servlet</groupId>
        <artifactId>servlet-api</artifactId>
        <version>2.5</version>
    </dependency>
</dependencies>
<build>
    <plugins>
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-dependency-plugin</artifactId>
            <version>2.4</version>
            <executions>
                <execution>
                    <id>copy-dependencies</id>
                    <phase>package</phase>
                    <goals><goal>copy-dependencies</goal></goals>
                </execution>
            </executions>
        </plugin>
    </plugins>
</build>
</project>

暫無
暫無

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

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