Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/python-2.7/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在windows上硬编码maven使用的java_Java_Maven - Fatal编程技术网

如何在windows上硬编码maven使用的java

如何在windows上硬编码maven使用的java,java,maven,Java,Maven,我知道maven使用JAVA\u HOME环境变量来启动自己。但由于缺乏管理特权(公司的安全政策),我无法更改该变量。我已经安装了Oracle JRE,maven目前正在使用它。我在Windows10上运行 我想硬编码我的maven使用特定的JDK文件夹来运行它自己。我正在研究的一个解决方案是在$MAVEN\u HOME\bin\mvn文件中硬编码,但我无法这样做。当我试图添加以下内容时: set JAVA_HOME="E:\ProgramFiles\java\jdk8" export JAVA

我知道maven使用
JAVA\u HOME
环境变量来启动自己。但由于缺乏管理特权(公司的安全政策),我无法更改该变量。我已经安装了Oracle JRE,maven目前正在使用它。我在Windows10上运行

我想硬编码我的maven使用特定的JDK文件夹来运行它自己。我正在研究的一个解决方案是在
$MAVEN\u HOME\bin\mvn
文件中硬编码,但我无法这样做。当我试图添加以下内容时:

set JAVA_HOME="E:\ProgramFiles\java\jdk8"
export JAVA_HOME="E:\ProgramFiles\java\jdk8"
JAVA_HOME=`E:\ProgramFiles\java\jdk8`
在该文件中,它仍然指向已安装的JRE,我可以从
mvn-version
命令的输出中看到这一点

ApacheMaven 3.5.0(ff8f5e7444045639af65f6095c62210b5713f426;2017-04-03T22:39:06+03:00) Maven主页:E:\ProgramFiles\apache-Maven-3.5.0\bin\。。 Java版本:1.8.0131,供应商:Oracle公司 Java主页:C:\Program Files\Java\jre1.8.0\u 131 默认区域设置:ru_ru,平台编码:Cp1251 操作系统名称:“windows 10”,版本:“10.0”,arch:“amd64”,系列:“windows”


问题是:为了使用所需的硬编码JDK版本,我需要如何更改
$MAVEN_HOME\bin
中的
mvn
mvn.cmd
文件?或者,除了更改环境变量之外,是否还有其他解决方案(因为我需要在任何地方运行
mvn
命令,并且需要使用特定的jdk)?

在Linux中,您可以通过编辑/创建
mavenrc
文件来执行相同的操作

vi ~/.mavenrc
使用一些输入,例如:

export PATH
export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_65.jdk/Contents/Home
export PATH=${PATH}:$JAVA_HOME/bin
我在Windows10上运行

可以在
%HOME%\mavenrc.bat
中创建一个类似的文件(尚未尝试过),该文件具有适当的定义

编辑:感谢@Robert指出它,感谢它的windows

%USERPROFILE%\mavenrc_pre.cmd

您需要修改/创建的文件。

您不需要在windows中使用export命令。 您可以做的是,编辑mvn.cmd文件,并在文件开头定义您自己的MAVEN_JAVA_主页

set MAVEN_JAVA_HOME="E:\ProgramFiles\java\jdk8" 
echo %MAVEN_JAVA_HOME%

并将mvn.cmd中的所有JAVA_HOME替换为MAVEN_JAVA_HOME。对于Windows,它是
%USERPROFILE%\mavenrc_pre.cmd
@robertscholet谢谢:)在答案中更新了…在Windows上已经工作很久了我没有file@TolegenIzbassar在这种情况下,您可以创建一个。OP没有编辑此文件的权限,因为他说“我正在研究的一个解决方案是将其硬编码到$MAVEN_HOME\bin\mvn文件中,但我不能这样做。当我尝试添加类似这样的内容时:“也许环境变量有一个变通方法。如果您转到控制面板->用户帐户,您应该能够在左侧看到“更改我的环境变量”。当您单击时,您应该看到“环境变量”窗口,并且顶部窗格(其中包含只有您的用户才能看到的环境变量)应该是可编辑的。您可以在那里设置JAVA_HOME、M2_HOME或任何您需要的设置。