我们正在Heroku上构建一个maven项目。 Github是SCM
此项目依赖于我们的私有maven存储库。
<repositories>
<repository>
<id>archiva</id>
<url>http://My-URL/archiva/repository/snapshots/</url>
<snapshots>
<enabled>true</enabled>
</snapshots>
<releases>
<enabled>true</enabled>
</releases>
</repository>
</repositories>
此凭据在本地maven的settings.xml中指定。
<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0
http://maven.apache.org/xsd/settings-1.0.0.xsd">
<servers>
<server>
<id>archiva</id>
<username>admin</username>
<password>admin</password>
</server>
</servers>
</settings>
当我将代码推送到Heroku时,它需要此凭据才能从私有仓库下载依赖jar。在Heroku上,如何编辑此文件或heroku上的maven home位置,以便我们可以使用heroku run bash --app Appname
答案 0 :(得分:0)
jcabi-heroku-maven-plugin主要是为了解决这个特殊问题。 Heroku希望您将源代码推送到他们的Git存储库,让他们在那里编译并运行。上述插件的工作方式不同。它依赖于已编译的JAR / WAR工件,并仅向Heroku Git提交settings.xml
和pom.xml
。然后,在maven-invoker-plugin
的帮助下,它远程运行您的JAR / WAR。
您可以在setting.xml中使用私有存储库 - 它们的配置将自动移动到Heroku。