Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/maven/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
无法将本地maven人工制品安装到远程存储库google android maps_Maven_Maven 3 - Fatal编程技术网

无法将本地maven人工制品安装到远程存储库google android maps

无法将本地maven人工制品安装到远程存储库google android maps,maven,maven-3,Maven,Maven 3,我正在建立一个Jenkins构建环境来构建我的android项目。在大多数情况下是可以的,但是有一些依赖项在中央存储库中不可用,例如Google Android Maps API,因此我需要手动将其安装到远程存储库中。我已经使用mvn install将这些安装到了我的本地repo上,效果很好 我已经做了一些谷歌搜索,到目前为止有以下配置,但是当我尝试将mapsjar部署到我的远程repo时,我看到了以下错误 mvn deploy:deploy-file -DgroupId=com.google.

我正在建立一个Jenkins构建环境来构建我的android项目。在大多数情况下是可以的,但是有一些依赖项在中央存储库中不可用,例如Google Android Maps API,因此我需要手动将其安装到远程存储库中。我已经使用
mvn install
将这些安装到了我的本地repo上,效果很好

我已经做了一些谷歌搜索,到目前为止有以下配置,但是当我尝试将mapsjar部署到我的远程repo时,我看到了以下错误

mvn deploy:deploy-file -DgroupId=com.google.android.maps -DartifactId=maps -Dversion=8_r1 -Dpackaging=jar -Dfile=C:\Users\James\.m2\repository\com\google\android\maps\maps\8_r1\maps-8_r1.jar -DrepositoryId=cloudbeesreleases -Durl=https://repository-myusername.forge.cloudbees.com/release/
我看到:

[INFO] Error stacktraces are turned on.
[INFO] Scanning for projects...
[INFO]                                                                         
[INFO] ------------------------------------------------------------------------
[INFO] Building Maven Stub Project (No POM) 1
[INFO] ------------------------------------------------------------------------
[INFO] 
[INFO] --- maven-deploy-plugin:2.5:deploy-file (default-cli) @ standalone-pom ---
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 0.450s
[INFO] Finished at: Sat Feb 18 17:01:06 GMT 2012
[INFO] Final Memory: 4M/92M
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-deploy-plugin:2.5:deploy-file (default-cli) on project standalone-pom: Cannot deploy artifact from the local repository: C:\Users\James\.m2\repository\com\google\android\maps\maps\8_r1\maps-8_r1.jar -> [Help 1]
org.apache.maven.lifecycle.LifecycleExecutionException: Failed to execute goal org.apache.maven.plugins:maven-deploy-plugin:2.5:deploy-file (default-cli) on project standalone-pom: Cannot deploy artifact from the local repository: C:\Users\James\.m2\repository\com\google\android\maps\maps\8_r1\maps-8_r1.jar
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:213)
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:153)
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:145)
    at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:84)
    at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:59)
    at org.apache.maven.lifecycle.internal.LifecycleStarter.singleThreadedBuild(LifecycleStarter.java:183)
    at org.apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.java:161)
    at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:319)
    at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:156)
    at org.apache.maven.cli.MavenCli.execute(MavenCli.java:537)
    at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:196)
    at org.apache.maven.cli.MavenCli.main(MavenCli.java:141)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:597)
    at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:290)
    at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:230)
    at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:409)
    at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:352)
Caused by: org.apache.maven.plugin.MojoFailureException: Cannot deploy artifact from the local repository: C:\Users\James\.m2\repository\com\google\android\maps\maps\8_r1\maps-8_r1.jar
    at org.apache.maven.plugin.deploy.DeployFileMojo.execute(DeployFileMojo.java:211)
    at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:101)
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:209)
    ... 19 more
[ERROR] 
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR] 
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoFailureException
在我的
settings.xml中有以下内容

<profiles>
    <profile>
      <id>artifactory</id>
      <repositories>
        <repository>
          <id>cloudbeesreleases</id>
          <name>libs-releases</name>
          <url>https://repository-myusername.forge.cloudbees.com/release/</url>
          <snapshots>
            <enabled>false</enabled>
          </snapshots>
        </repository>        
      </repositories>      
    </profile>
  </profiles>
  <activeProfiles>
    <activeProfile>artifactory</activeProfile>
  </activeProfiles>

人工制品
云杉
libs发布
https://repository-myusername.forge.cloudbees.com/release/
假的
人工制品
我是否有一些配置错误,或者我完全误解了
部署
应该如何工作?

可以尝试以下几点: 使用settings参数确保使用了正确的设置文件,其中包含多个具有层次结构的设置文件

--settings <arg>

--设置显示“要映射到settings.xml下部分的服务器Id”,因此我猜如果没有匹配的服务器配置,它将无法工作。

错误消息似乎很简单

无法从本地存储库部署项目:


能否尝试将文件部署到其他位置?也似乎是在同一个问题上,并说明了为什么会有问题。

将Raghuram的答案和neu242的评论放在一起,对我来说就是解决办法。为了清楚起见:

cp ~/.m2/repository/path/to/jar/api-1.0-SNAPSHOT.jar /tmp/.
mvn deploy:deploy-file -DgroupId=com.mygroup -DartifactId=api -Dversion=1.0-SNAPSHOT -Durl=file:./local-maven-repo/ -DrepositoryId=local-maven-repo -DupdateReleaseInfo=true -Dfile=/tmp/api-1.0-SNAPSHOT.jar -Dpackaging=jar

我也遇到了同样的问题,所以我将工件复制到/tmp/并尝试从该位置部署。成功了!谢谢,在maven local repo之外复制文件解决了这个问题!如果有一种方法可以覆盖这种行为(例如--force),那就太好了,因为在很多情况下,用户可能确实需要这样做。。。必须将文件从存储库中复制出来是一种黑客行为。
cp ~/.m2/repository/path/to/jar/api-1.0-SNAPSHOT.jar /tmp/.
mvn deploy:deploy-file -DgroupId=com.mygroup -DartifactId=api -Dversion=1.0-SNAPSHOT -Durl=file:./local-maven-repo/ -DrepositoryId=local-maven-repo -DupdateReleaseInfo=true -Dfile=/tmp/api-1.0-SNAPSHOT.jar -Dpackaging=jar