更改Maven settings.xml的位置并自动传递-s

问题描述

简介

我将我的settings.xml文件移动到了安全的网络共享中,只有我可以访问该网络共享。 下一步还要对文件中的各种凭据进行加密。

不幸的是,现在当我运行mvn时,每次都需要指定位置,例如:

mvn -s Z:\CONfig\settings.xml 

解决方案尝试-别名

我尝试在CMDER中制作一个咏叹调,但是我总是得到goal not specfied error

例如在user_aliases.cmd中,我添加了以下尝试:

mvn1=echo "Using custom cmder alias (cmder user_aliases.cmd) :  mvn -s Z:\CONfig\settings.xml " & mvn -s Z:\CONfig\settings.xml

mvn2=mvn -s Z:\CONfig\settings.xml

他们都失败了,并出现关于未通过目标的错误

所以这是争论不被通过的问题。


任何人都可以使用永久解决方案对该位置进行硬编码?

更新

我当前的解决方案是编辑mvn.cmd文件本身。

添加了类似以下内容方法,它可以工作..... 尽管它会破坏其他人想要使用它的mvn:

echo "Modified mvn.cmd to add custom path mvn -s Z:\CONfig\settings.xml " 

"%JAVACMD%" ^
  %JVM_CONfig_MAVEN_PROPS% ^
  %MAVEN_OPTS% ^
  %MAVEN_DEBUG_OPTS% ^
  -classpath %CLASSWORLDS_JAR% ^
  "-Dclassworlds.conf=%MAVEN_HOME%\bin\m2.conf" ^
  "-Dmaven.home=%MAVEN_HOME%" ^
  "-Dlibrary.jansi.path=%MAVEN_HOME%\lib\jansi-native" ^
  "-Dmaven.multiModuleProjectDirectory=%MAVEN_PROJECTBASEDIR%" ^
  %CLASSWORLDS_LAUNCHER% -s Z:\CONfig\settings.xml  %MAVEN_CMD_LINE_ARGS%
if ERRORLEVEL 1 goto error
goto end

我可以将Maven的副本复制到我的Z驱动器(安全的)上,然后调用它以避免所有这些情况。

解决方法

我尝试了两种可行的解决方案:

将Maven移到具有权限的文件夹中

一种解决方案是将Maven直接移动到受保护的隔离文件夹中,例如共享网络文件夹(具有适当权限)或用户文件夹。

编辑mvn cmd文件

我编辑了mvn.cmd文件本身。

我添加了类似以下内容的方法,它可以正常工作.....

警告:它会破坏其他任何想要使用它的人的mvn。因此,仅在没有考虑的情况下使用

name = int(input("Come ti chiami? "))
if name is "Antonio":
    print("Eh no")
if name is "Dio":
    print("Error 404: Dio non esiste")
if name is "Dio porco":
    print("lol")