如何通过maven下载JDK安装程序?

如何通过maven下载JDK安装程序?,maven,maven-3,java,jdk1.6,Maven,Maven 3,Java,Jdk1.6,我试图通过maven下载Oracle(Sun)Java JDK,但没有成功: <dependency> <groupId>com.sun</groupId> <artifactId>jdk</artifactId> <version>6u45</version> <classifier>dlj-linux-i586</classifier> <

我试图通过maven下载Oracle(Sun)Java JDK,但没有成功:

<dependency>
    <groupId>com.sun</groupId>
    <artifactId>jdk</artifactId>
    <version>6u45</version>
    <classifier>dlj-linux-i586</classifier>
    <type>bin</type>
</dependency>
如何通过maven下载JDK安装程序

你不能。JDK安装程序不在任何公共Maven存储库中。如果是的话,甲骨文的律师们将发出“停止和停止”的信件

我知道您可以使用Maven exec插件(或类似插件)来“解决”Oracle的点击式许可协议。然而,根据美国法律,这可能是非法的。当检察官决定以身作则时,想想“WEEV”发生了什么。

如何通过maven下载JDK安装程序

你不能。JDK安装程序不在任何公共Maven存储库中。如果是的话,甲骨文的律师们将发出“停止和停止”的信件


我知道您可以使用Maven exec插件(或类似插件)来“解决”Oracle的点击式许可协议。然而,根据美国法律,这可能是非法的。当检察官决定给他做一个例子时,想想“WEEV”发生了什么。

< P>当你在Linux机器上运行时,你可以使用Maven Excel插件调用CURL/WGET:J/K:< /P>
...
<plugin>
  <groupId>org.codehaus.mojo</groupId>
  <artifactId>exec-maven-plugin</artifactId>
  <version>1.2.1</version>
  <executions>
    <!-- using curl -->
    <execution>
      <id>download oracle jdk (curl)</id>
      <phase>process-resources</phase>
      <goals>
        <goal>exec</goal>
      </goals>
      <configuration>
        <executable>curl</executable>
        <arguments>
          <argument>-L</argument>
          <argument>--header</argument>
          <argument>Cookie: s_nr=1359635827494; s_cc=true; gpw_e24=blub; s_sq=[[]]; gpv_p24=novalue</argument>
          <argument>http://download.oracle.com/otn-pub/java/jdk/6u45-b06/jdk-6u45-linux-i586.bin</argument>
          <argumen>-o</argumen>
          <argument>${project.build.directory}/curl-jdk-6u45-linux-i586.bin</argument>
        </arguments>
      </configuration>
    </execution>
    <execution>
      <!-- using wget -->
      <id>download oracle jdk (wget)</id>
      <phase>process-resources</phase>
      <goals>
        <goal>exec</goal>
      </goals>
      <configuration>
        <executable>wget</executable>
        <arguments>
          <argument>--no-cookies</argument>
          <argument>--header</argument>
          <argument>Cookie: s_nr=1359635827494; s_cc=true; gpw_e24=blub; s_sq=[[]]; gpv_p24=no value</argument>
          <argument>http://download.oracle.com/otn-pub/java/jdk/6u45-b06/jdk-6u45-linux-x64.bin</argument>
          <argument>-O</argument>
          <argument>${project.build.directory}/wget-jdk-6u45-linux-x64.bin</argument>
        </arguments>
      </configuration>
    </execution>
  </executions>
</plugin>
...
。。。
org.codehaus.mojo
execmaven插件
1.2.1
下载oracle jdk(curl)
过程资源
执行官
卷曲
-L
--标题
Cookie:s_nr=1359635827494;s_cc=真;gpw_e24=蓝色;s_sq=[[]];gpv_p24=新值
http://download.oracle.com/otn-pub/java/jdk/6u45-b06/jdk-6u45-linux-i586.bin
-o
${project.build.directory}/curl-jdk-6u45-linux-i586.bin
下载oracle jdk(wget)
过程资源
执行官
wget
--没有饼干
--标题
Cookie:s_nr=1359635827494;s_cc=真;gpw_e24=蓝色;s_sq=[[]];gpv_p24=无值
http://download.oracle.com/otn-pub/java/jdk/6u45-b06/jdk-6u45-linux-x64.bin
-O
${project.build.directory}/wget-jdk-6u45-linux-x64.bin
...

当您在linux机器上运行时,可以使用调用curl/wget的maven exec插件下载jdk:

...
<plugin>
  <groupId>org.codehaus.mojo</groupId>
  <artifactId>exec-maven-plugin</artifactId>
  <version>1.2.1</version>
  <executions>
    <!-- using curl -->
    <execution>
      <id>download oracle jdk (curl)</id>
      <phase>process-resources</phase>
      <goals>
        <goal>exec</goal>
      </goals>
      <configuration>
        <executable>curl</executable>
        <arguments>
          <argument>-L</argument>
          <argument>--header</argument>
          <argument>Cookie: s_nr=1359635827494; s_cc=true; gpw_e24=blub; s_sq=[[]]; gpv_p24=novalue</argument>
          <argument>http://download.oracle.com/otn-pub/java/jdk/6u45-b06/jdk-6u45-linux-i586.bin</argument>
          <argumen>-o</argumen>
          <argument>${project.build.directory}/curl-jdk-6u45-linux-i586.bin</argument>
        </arguments>
      </configuration>
    </execution>
    <execution>
      <!-- using wget -->
      <id>download oracle jdk (wget)</id>
      <phase>process-resources</phase>
      <goals>
        <goal>exec</goal>
      </goals>
      <configuration>
        <executable>wget</executable>
        <arguments>
          <argument>--no-cookies</argument>
          <argument>--header</argument>
          <argument>Cookie: s_nr=1359635827494; s_cc=true; gpw_e24=blub; s_sq=[[]]; gpv_p24=no value</argument>
          <argument>http://download.oracle.com/otn-pub/java/jdk/6u45-b06/jdk-6u45-linux-x64.bin</argument>
          <argument>-O</argument>
          <argument>${project.build.directory}/wget-jdk-6u45-linux-x64.bin</argument>
        </arguments>
      </configuration>
    </execution>
  </executions>
</plugin>
...
。。。
org.codehaus.mojo
execmaven插件
1.2.1
下载oracle jdk(curl)
过程资源
执行官
卷曲
-L
--标题
Cookie:s_nr=1359635827494;s_cc=真;gpw_e24=蓝色;s_sq=[[]];gpv_p24=新值
http://download.oracle.com/otn-pub/java/jdk/6u45-b06/jdk-6u45-linux-i586.bin
-o
${project.build.directory}/curl-jdk-6u45-linux-i586.bin
下载oracle jdk(wget)
过程资源
执行官
wget
--没有饼干
--标题
Cookie:s_nr=1359635827494;s_cc=真;gpw_e24=蓝色;s_sq=[[]];gpv_p24=无值
http://download.oracle.com/otn-pub/java/jdk/6u45-b06/jdk-6u45-linux-x64.bin
-O
${project.build.directory}/wget-jdk-6u45-linux-x64.bin
...
我开发了一个可以从不同提供商(Liberica、Adopt、SapMachine)下载和解包OpenJDK的软件,它对于在分布式系统中准备跨平台JDK映像非常有用

<plugin>
<groupId>com.igormaznitsa</groupId>
<artifactId>mvn-jlink-wrapper</artifactId>
<version>1.0.2</version>
<executions>
    <execution>
        <id>cache-jdk-8</id>
        <goals>
            <goal>cache-jdk</goal>
        </goals>
        <configuration>
            <jdkPathProperty>jlink.jdk.path</jdkPathProperty>
            <jdkCachePath>${project.build.directory}${file.separator}jdkCache</jdkCachePath>

            <provider>ADOPT</provider>
            <providerConfig>
                <release>jdk8u192-b12</release>
                <arch>x64</arch>
                <type>jdk</type>
                <impl>hotspot</impl>
            </providerConfig>

        </configuration>
    </execution>
</executions>

com.igormaznitsa
mvn jlink包装器
1.0.2
cache-jdk-8
缓存jdk
jlink.jdk.path
${project.build.directory}${file.separator}jdkCache
采用
jdk8u192-b12
x64
jdk
热点

我开发了一个可以从不同提供商(Liberica、Adopt、SapMachine)下载和解包OpenJDK的软件,它对于在分布式系统中准备跨平台JDK映像非常有用

<plugin>
<groupId>com.igormaznitsa</groupId>
<artifactId>mvn-jlink-wrapper</artifactId>
<version>1.0.2</version>
<executions>
    <execution>
        <id>cache-jdk-8</id>
        <goals>
            <goal>cache-jdk</goal>
        </goals>
        <configuration>
            <jdkPathProperty>jlink.jdk.path</jdkPathProperty>
            <jdkCachePath>${project.build.directory}${file.separator}jdkCache</jdkCachePath>

            <provider>ADOPT</provider>
            <providerConfig>
                <release>jdk8u192-b12</release>
                <arch>x64</arch>
                <type>jdk</type>
                <impl>hotspot</impl>
            </providerConfig>

        </configuration>
    </execution>
</executions>

com.igormaznitsa
mvn jlink包装器
1.0.2
cache-jdk-8
缓存jdk
jlink.jdk.path
${project.build.directory}${file.separator}jdkCache
采用
jdk8u192-b12
x64
jdk
热点

您想下载什么?JDK安装程序?是的,JDK-6u45-linux-i586.bin,但是dljk。maven JDK存储库的含义是什么?我想你正在寻找你想要下载的内容?JDK安装程序?是的,JDK-6u45-linux-i586.bin,但是dljk我认为您正在寻找的maven JDK存储库的含义是什么?请注意,这绕过了Oracle用于确保您同意许可条款的方案。这样做可能被解释为未经授权访问计算机系统。在美国,人们因为这种事情被起诉并被送进监狱。不,他们没有。从来没有人会因为这样的事情被起诉。像Jenkins这样的开放源码软件包一直在自动完成这项工作。@b争论-没有人被起诉这一事实并不意味着他们不能。根据法律,“weev”被起诉显然是违法的。(绕过点击可以说是在未经授权的情况下访问计算机系统。)它所需要的只是甲骨文投诉和滥用权力的美国联邦检察官。请仔细阅读“weev”案例。请注意,这是在规避Oracle用于确保您同意许可条款的方案。这样做可能被解释为未经授权访问计算机系统。在美国,人们因为这种事情被起诉并被送进监狱。不,他们没有。从来没有人会因为这样的事情被起诉。像Jenkins这样的开放源码软件包一直在自动完成这项工作。@b争论-没有人被起诉这一事实并不意味着他们不能。这表面上是违法的