2012-01-28 67 views
4

我正在使用OSGI開發Web應用程序。我有一個我找不到的maven配置錯誤。這是完整的源代碼: http://uploading.com/files/8e5c9888/SH_27_test.zip/Maven - 未解決的對[javax.activation,javax.annotation]的引用

這是POM文件:

<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> 
    <parent> 
     <groupId>org.DX_57.osgi.SH_27</groupId> 
     <artifactId>SH_27</artifactId> 
     <version>1.0-SNAPSHOT</version> 
     <relativePath>../pom.xml</relativePath> 
    </parent> 
    <artifactId>SH_27-impl</artifactId> 
    <packaging>bundle</packaging> 
    <name>SH_27-impl</name> 
    <url>http://maven.apache.org</url> 
    <dependencies> 
     <dependency> 
      <groupId>junit</groupId> 
      <artifactId>junit</artifactId> 
      <version>3.8.1</version> 
      <scope>test</scope> 
     </dependency> 
     <dependency> 
      <groupId>org.apache.felix</groupId> 
      <artifactId>org.osgi.core</artifactId> 
      <version>1.0.0</version> 
     </dependency> 
     <dependency> 
      <groupId>${pom.groupId}</groupId> 
      <artifactId>SH_27-api</artifactId> 
      <version>1.0-SNAPSHOT</version> 
     </dependency> 
     <dependency> 
      <groupId>${project.groupId}</groupId> 
      <artifactId>SH_27-api</artifactId> 
      <version>${project.version}</version> 
     </dependency> 
    </dependencies> 
    <build> 
     <plugins> 
      <plugin> 
       <groupId>org.apache.felix</groupId> 
       <artifactId>maven-bundle-plugin</artifactId> 
       <extensions>true</extensions> 
       <configuration> 
        <instructions> 
         <Import-Package>${pom.groupId}.api, org.osgi.framework</Import-Package> 
         <Bundle-SymbolicName>${pom.artifactId}</Bundle-SymbolicName> 
         <Bundle-Activator>${pom.groupId}.impl.SessionHandleApp</Bundle-Activator> 
        </instructions> 
       </configuration> 
      </plugin> 
      <plugin> 
       <groupId>org.apache.maven.plugins</groupId> 
       <artifactId>maven-compiler-plugin</artifactId> 
       <version>2.3.2</version> 
       <configuration> 
        <source>1.7</source> 
        <target>1.7</target> 
       </configuration> 
      </plugin> 
     </plugins> 
    </build> 
    <groupId>org.DX_57.osgi.SH_27</groupId> 
</project> 

當我嘗試使用Netbeans編譯它,我得到這個錯誤: http://pastebin.com/whxuSb7V

出現的問題,當我添加@Datasource。看起來我缺少POM文件中的東西,但我不知道它是什麼?

任何幫助將不勝感激。

最良好的祝願 彼得

+1

您需要包含具有JEE類的東西。 – 2012-01-28 20:36:20

+0

你會更具體嗎? – 2012-01-28 20:56:08

回答

2

這是解決方案:

<Import-Package>${pom.groupId}.api, org.osgi.framework</Import-Package> 

應該是:

<Import-Package>*</Import-Package> 

我希望這將是一個人幫助。

+0

您可以[接受答案](http://meta.stackexchange.com/a/5235/160062)。即使是你自己的。 – oers 2012-02-01 10:30:27

2

退房Maven: Unresolved references to [org.osgi.service.http]。我認爲他有同樣的問題,他設法通過包含需要導入的特定軟件包來解決。

+0

它仍然無法正常工作。我在帖子中測試了建議的更正,但是我得到了同樣的錯誤。 – 2012-01-29 09:10:03

相關問題