Java JNLP:如何将JAR(下载的JAR/文件)放置/保存在两个不同的路径/repo中

Java JNLP:如何将JAR(下载的JAR/文件)放置/保存在两个不同的路径/repo中,java,repository,java-web-start,jnlp,Java,Repository,Java Web Start,Jnlp,JNLP:如何将JAR(下载的JAR/文件)放在两个不同的路径/repo中 多个应用程序都有自己的JNLP文件。这些都有特定于应用程序的jar(比如100个jar)和一些使用公共共享jar(例如50个jar) 当我们启动app1 JNLP时,它会下载所有JAR(例如:150个JAR)并将其保存在本地的一个回购位置。如果我们启动app2 JNLP,它将再次下载所有JAR(包括公共共享的50个JAR)并保存在其repo位置(本地:示例:C:/app2/repo) 例如,对于app1,我们正在下载所有

JNLP:如何将JAR(下载的JAR/文件)放在两个不同的路径/repo中

多个应用程序都有自己的JNLP文件。这些都有特定于应用程序的jar(比如100个jar)和一些使用公共共享jar(例如50个jar)

当我们启动app1 JNLP时,它会下载所有JAR(例如:150个JAR)并将其保存在本地的一个回购位置。如果我们启动app2 JNLP,它将再次下载所有JAR(包括公共共享的50个JAR)并保存在其repo位置(本地:示例:C:/app2/repo)

例如,对于app1,我们正在下载所有文件并将其保存在C:/app1/repo中 JNLP示例代码:

<application-desc main-class="MAIN_CLASS">      
       <argument>-retries=3</argument>
       <argument>-app.repo.url=http://REPO_URL/repositoryAppSpecific.xml</argument> 
        <argument>-app.repo.url=http://REPO_URL/repositoryCommon.xml</argument>     
        <argument>-installDir=C:\app1\repo</argument>       
</application-desc>

-重试次数=3次
-app.repo.url=http://REPO_URL/repositoryAppSpecific.xml 
-app.repo.url=http://REPO_URL/repositoryCommon.xml     
-installDir=C:\app1\repo
对于app2,我们正在下载所有文件并在本地保存在C:/app2/repo中


但这两个应用程序都有一些通用文件(JAR)。因此,如何将公共文件保存在两个不同的位置/路径(例如:C:aap1/repo用于特定于应用程序的jars&C:/common用于公共/共享文件),而不是将所有下载的文件保存在一个位置?

您可以创建一个包含所有公共文件的jnlp,然后,为每个其他应用程序创建它们自己的jnlp,该jnlp引用公共jnlp。要引用通用jnlp,请使用“extension”标记,如下所示:

<resources>
  <j2se href="http://java.sun.com/products/autodl/j2se" version="1.4+"/>
  <jar href="app1.jar" main="true"/>
  <extension name="common" href="common.jnlp" />
</resources>