2015-02-12 34 views
0

我正在創建一個使用火花和碼頭庫的程序。依賴關係由maven管理。模塊之間(火花和碼頭)不兼容使用maven

問題是如果定義了機器人依賴關係,則找不到某些類。具體爲org.eclipse.jetty.server.ServerConnector。其他課程沒有問題。如果我刪除火花核心依賴項,所有工作都正常。爲什麼會發生?

我的例子,在此基礎上repository,並且可以重現該錯誤將火花核心依賴於「javax.websocket,例如」項目

我與不同版本的火花核心和jetty-的嘗試的WebSocket:

  • 火花芯(2.10和2.11):1.2.0和1.2.1
  • Javax.websocket-例如:9.3.0.M1,9.2.7.v20150116和9.1.5.v9 .1.5.v20140505

Maven的依賴關係:

<dependency> <!-- Spark dependency --> 
     <groupId>org.apache.spark</groupId> 
     <artifactId>spark-core_2.10</artifactId> 
     <version>1.2.0</version> 
     <!--<scope>provided</scope>--> 
    </dependency> 
    <dependency> <!-- Jetty dependency --> 
     <groupId>org.eclipse.jetty.websocket</groupId> 
     <artifactId>javax-websocket-server-impl</artifactId> 
     <version>9.2.7.v20150116</version> 
     <!--<scope>provided</scope>--> 
    </dependency> 

編輯:

的更多信息:我一直在使用流浪漢轉載於一個空的場景錯誤。使用的盒子是this。我已經使用這個manual安裝了maven,git和oracle Java。我使用這個repository的「javax.websocket-example」項目完成了測試。

在此測試中,項目運行時沒有de spark-core依賴性,並且不依賴於依賴關係運行。依賴所使用的版本是最後一個,我已經與該項目碼頭的版本,並與最後的9.2.X的(9.2.7.v20150116)

依賴條件的嘗試:

<dependency> 
     <groupId>org.apache.spark</groupId> 
     <artifactId>spark-core_2.10</artifactId> 
     <version>1.2.1</version> 
    </dependency> 

回答

0

這是同一個庫與不同版本之間的依賴關係問題。 (火花使用8.1.XXX和我的模塊使用9.XX)。由於在模塊中使用,所以不能排除依賴關係。那麼,這個問題是一個Java的依賴問題,有沒有其他的技術解決方案與OSGi的

我問類似的問題here