簡體   English   中英

WebLogic客戶端jar

[英]WebLogic client jar

我想使用Java和JMX來監視WebLogic。 我需要使用提供到WebLogic lib目錄中的wlclient.jar。

有沒有我可以用來下載wlclient.jar的maven資源庫? 我找到的唯一方法是手動將jar文件導入我的存儲庫,但這不是我的選擇。

另一種方法是創建項目內存儲庫。 這使您的項目真正可移植。 此方法類似於A. Di Matteo提到的“使用依賴關系與系統范圍”,除了它具有能夠使用任何范圍(而不僅僅是“系統”)的額外好處。

我遇到了和你一樣的問題,使用了Maven Central中沒有的jar,在探索了所有可能的選項之后,我選擇了項目內的存儲庫,我相信它更好的系統范圍依賴,因為它釋放了你選擇范圍。

執行此操作的步驟:

  1. 在項目中創建一個名為“lib”的子目錄

  2. 將此lib添加為pom中的存儲庫

<repositories>
    <repository>
        <id>lib</id>
        <name>In Project Repo</name>
        <url>file://${basedir}/lib</url>
    </repository>
</repositories>
  1. 將artefact安裝到lib目錄:

mvn install:install-file -Dfile=myArtifact.jar -DgroupId=xyz -DartifactId=${artifactId} -Dversion=${version} -Dpackaging=jar -DgeneratePom=true

  1. 並且,最后使用依賴項,就像使用任何其他依賴項一樣
<dependencies>
    ....
    <dependency>
        <groupId>x.y.z</groupId>
        <artifactId>${artifactId}</artifactId>
        <version>${version}</version>
    </dependency>
</dependencies>

如果在任何Maven存儲庫中找不到jar,則可以根據需要應用以下任何操作:

內部Maven存儲庫
如果您沒有內部存儲庫(如Artifactory或Nexus),通常在公司中用作內部maven緩存/代理/控制點,但也可以選擇安裝它並在本地運行它。
然后,您可以在那里上傳庫,提供Maven GAV(GroupId,ArtifactId,Version)並讓Maven將其指向存儲庫(對於您的CI服務器,如果有的話,為您的同事指定)。 然后,您可以將庫添加為標准maven依賴項。 此解決方案具有更長的設置,但具有更好的可維護性。

在本地緩存中安裝庫
您可以使用Maven Install Plugin並將庫安裝到本地緩存中,如此官方示例所示。
基本上,您可以運行以下命令:

mvn org.apache.maven.plugins:maven-install-plugin:2.5.2:install-file -Dfile=path-to\wlclient.jar -DgroupId=weblogic -DartifactId=wlclient -Dversion=1.0.0 -Dpackaging=jar

它將使用標准Maven GAV將庫復制到本地Maven緩存。 但是,如上所述,您應確保在任何CI服務器和任何團隊配對計算機上復制相同的設置。 然后,您可以將庫添加為標准maven依賴項。 該解決方案具有更快的設置,但可維護性較低。

但是,這兩種解決方案都會影響構建的可移植性(如果有人試圖在公司網絡或團隊之外構建它,則構建將失敗)。

使用系統范圍的依賴性
您可以將jar作為項目的一部分,並通過該依賴項的system范圍指向它。

<dependency>
  <groupId>weblogic</groupId>
  <artifactId>wlclient</artifactId>
  <version>1.0.0</version>
  <systemPath>${basedir}/path/to/library/wlclient-1.0.0.jar</systemPath>
  <scope>system</scope>
</dependency>

您應該重命名jar,以符合Maven約定。
這個解決方案更具可移植性,需要的設置要少得多,但需要對其進行維護,並且需要將相關庫作為版本化項目的一部分進行檢查(有些人可能會對此做法存在強烈反對)。

暫無
暫無

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

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