2010-04-05 61 views
0

我想設置jetty-blazeds擴展名的碼頭。一切都看起來不錯,但是當我運行Maven來獲取依賴,我得到:jetty-blazeds和maven(com.adobe.flex#flex-messaging-core missing)

UNRESOLVED DEPENDENCIES 
com.adobe.flex#flex-messaging-core;3.2.0: not found 
com.adobe.flex#flex-messaging-common;3.2.0: not found 

我試過很多版本庫,但沒有成功。我想知道有人設法通過maven成功找到這些依賴關係嗎?如果是的話,可否請共享資料庫!

謝謝 -A

回答

1

如果你看看碼頭-的BlazeDS的POM,例如jetty-blazeds-7.0.0.1beta3.pom,你會看到這一點:

<repositories> 
    <repository> 
     <id>project-repo</id> 
     <name>project repo</name> 
     <url>file:${basedir}/maven_repo</url> 
     <releases><enabled>true</enabled></releases> 
     <snapshots><enabled>true</enabled></snapshots> 
    </repository> 
    </repositories> 

Jetty是使用基於文件的存儲庫。如果你在他們的svn倉庫中看到這個file based repository,你會發現它包含了所提到的工件(因此很可能在任何已知的公共倉庫中都不可用)。因此,我的建議是使用相同的策略,即在本地存儲庫或VCS中基於文件的存儲庫(也可以聲明https://svn.codehaus.org/jetty/jetty/branches/jetty-7/jetty-blazeds/maven_repo/作爲存儲庫,但這非常難看)在本地安裝工件。

如果您有公司存儲庫,其替代方案顯而易見:在其中部署adobe構件。

0

建議設立一箇中央Maven倉庫爲您的項目/部門,並在項目的pom配置。然後,您可以手動下載這些依賴關係,並手動將其部署到項目回購。雖然這是一項額外的工作,但從長遠來看,它消除了所有類型的問題。

+0

當然,這是解決這個問題的一個選擇。由於我的項目是一個簡單的項目,我寧願使用一些現有的存​​儲庫(如果我可以找到包含上述flex工件的項目)。 – 2010-04-05 11:58:14

+0

@Ali在一個人的項目中,甚至可以將需要的依賴項複製到您自己的機器上的本地回購庫中 - 我認爲它不會比這更簡單。 OTOH這使得你的項目不可移植...簡單有它的價格:-) – 2010-04-05 12:23:06