Unable to find artifact “copy-protoc:generate-sources”

匿名 (未验证) 提交于 2019-12-03 01:26:01

问题:

I'm using Google's Protocol Buffers in a project. We use Maven to compile the protobufs automatically ( based on http://vlkan.com/blog/post/2015/11/27/maven-protobuf/ )

Maven gave us tree errors which we were able to solve by installing Maven Plugins on our Eclipse installation. But there is one error we can't solve :

org.apache.maven.plugins:maven-dependency-plugin:2.9:copy:copy-protoc:generate-sources

This error comes and goes apparently "randomly" and it doesn't break the compilation: everything works perfectly fine. Here is the maven plugin configuration responsible for this problem:

    <plugin>         <groupId>org.apache.maven.plugins</groupId>         <artifactId>maven-dependency-plugin</artifactId>         <version>2.9</version>         <executions> ERROR HERE - <execution>                 <id>copy-protoc</id>                 <phase>generate-sources</phase>                 <goals>                     <goal>copy</goal>                 </goals>                 <configuration>                     <artifactItems>                         <artifactItem>                             <groupId>com.google.protobuf</groupId>                             <artifactId>protoc</artifactId>                             <version>3.0.0-beta-3</version>                             <classifier>${os.detected.classifier}</classifier>                             <type>exe</type>                             <outputDirectory>${project.build.directory}</outputDirectory>                         </artifactItem>                     </artifactItems>                 </configuration>             </execution>         </executions>     </plugin>

I tried deleting the .m2 folder or looking for more plugins to no avail.

How to remove that error from Eclipse? Thanks

Edit 1 , the whole stacktrace:

Unable to find artifact. (org.apache.maven.plugins:maven-dependency-plugin:2.9:copy:copy-protoc:generate-sources)  org.apache.maven.plugin.MojoExecutionException: Unable to find artifact.     at org.apache.maven.plugin.dependency.fromConfiguration.AbstractFromConfigurationMojo.getArtifact(AbstractFromConfigurationMojo.java:265)     at org.apache.maven.plugin.dependency.fromConfiguration.AbstractFromConfigurationMojo.getProcessedArtifactItems(AbstractFromConfigurationMojo.java:171)     at org.apache.maven.plugin.dependency.fromConfiguration.CopyMojo.doExecute(CopyMojo.java:105)     at org.apache.maven.plugin.dependency.AbstractDependencyMojo.execute(AbstractDependencyMojo.java:167)     at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:134)     at org.eclipse.m2e.core.internal.embedder.MavenImpl.execute(MavenImpl.java:331)     at org.eclipse.m2e.core.internal.embedder.MavenImpl$11.call(MavenImpl.java:1362)     at org.eclipse.m2e.core.internal.embedder.MavenImpl$11.call(MavenImpl.java:1)     at org.eclipse.m2e.core.internal.embedder.MavenExecutionContext.executeBare(MavenExecutionContext.java:176)     at org.eclipse.m2e.core.internal.embedder.MavenExecutionContext.execute(MavenExecutionContext.java:112)     at org.eclipse.m2e.core.internal.embedder.MavenImpl.execute(MavenImpl.java:1360)     at org.eclipse.m2e.core.project.configurator.MojoExecutionBuildParticipant.build(MojoExecutionBuildParticipant.java:52)     at com.ianbrandt.tools.m2e.mdp.core.MdpBuildParticipant.executeMojo(MdpBuildParticipant.java:133)     at com.ianbrandt.tools.m2e.mdp.core.MdpBuildParticipant.build(MdpBuildParticipant.java:67)     at org.eclipse.m2e.core.internal.builder.MavenBuilderImpl.build(MavenBuilderImpl.java:137)     at org.eclipse.m2e.core.internal.builder.MavenBuilder$1.method(MavenBuilder.java:172)     at org.eclipse.m2e.core.internal.builder.MavenBuilder$1.method(MavenBuilder.java:1)     at org.eclipse.m2e.core.internal.builder.MavenBuilder$BuildMethod$1$1.call(MavenBuilder.java:115)     at org.eclipse.m2e.core.internal.embedder.MavenExecutionContext.executeBare(MavenExecutionContext.java:176)     at org.eclipse.m2e.core.internal.embedder.MavenExecutionContext.execute(MavenExecutionContext.java:112)     at org.eclipse.m2e.core.internal.builder.MavenBuilder$BuildMethod$1.call(MavenBuilder.java:105)     at org.eclipse.m2e.core.internal.embedder.MavenExecutionContext.executeBare(MavenExecutionContext.java:176)     at org.eclipse.m2e.core.internal.embedder.MavenExecutionContext.execute(MavenExecutionContext.java:151)     at org.eclipse.m2e.core.internal.embedder.MavenExecutionContext.execute(MavenExecutionContext.java:99)     at org.eclipse.m2e.core.internal.builder.MavenBuilder$BuildMethod.execute(MavenBuilder.java:86)     at org.eclipse.m2e.core.internal.builder.MavenBuilder.build(MavenBuilder.java:200)     at org.eclipse.core.internal.events.BuildManager$2.run(BuildManager.java:734)     at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)     at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:205)     at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:245)     at org.eclipse.core.internal.events.BuildManager$1.run(BuildManager.java:300)     at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)     at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:303)     at org.eclipse.core.internal.events.BuildManager.basicBuildLoop(BuildManager.java:359)     at org.eclipse.core.internal.events.BuildManager.build(BuildManager.java:382)     at org.eclipse.core.internal.events.AutoBuildJob.doBuild(AutoBuildJob.java:144)     at org.eclipse.core.internal.events.AutoBuildJob.run(AutoBuildJob.java:235)     at org.eclipse.core.internal.jobs.Worker.run(Worker.java:55) Caused by: org.apache.maven.artifact.resolver.ArtifactNotFoundException: Failure to find com.google.protobuf:protoc:exe:3.0.0-beta-3 in https://repo.maven.apache.org/maven2 was cached in the local repository, resolution will not be reattempted until the update interval of central has elapsed or updates are forced  Try downloading the file manually from the project website.  Then, install it using the command:      mvn install:install-file -DgroupId=com.google.protobuf -DartifactId=protoc -Dversion=3.0.0-beta-3 -Dpackaging=exe -Dfile=/path/to/file  Alternatively, if you host your own repository you can deploy the file there:      mvn deploy:deploy-file -DgroupId=com.google.protobuf -DartifactId=protoc -Dversion=3.0.0-beta-3 -Dpackaging=exe -Dfile=/path/to/file -Durl=[url] -DrepositoryId=[id]     com.google.protobuf:protoc:exe:3.0.0-beta-3  from the specified remote repositories:   central (https://repo.maven.apache.org/maven2, releases=true, snapshots=false)      at org.apache.maven.artifact.resolver.DefaultArtifactResolver.resolve(DefaultArtifactResolver.java:218)     at org.apache.maven.artifact.resolver.DefaultArtifactResolver.resolve(DefaultArtifactResolver.java:154)     at org.apache.maven.artifact.resolver.DefaultArtifactResolver.resolve(DefaultArtifactResolver.java:545)     at org.apache.maven.plugin.dependency.fromConfiguration.AbstractFromConfigurationMojo.getArtifact(AbstractFromConfigurationMojo.java:257)     ... 37 more Caused by: org.eclipse.aether.resolution.ArtifactResolutionException: Failure to find com.google.protobuf:protoc:exe:3.0.0-beta-3 in https://repo.maven.apache.org/maven2 was cached in the local repository, resolution will not be reattempted until the update interval of central has elapsed or updates are forced     at org.eclipse.aether.internal.impl.DefaultArtifactResolver.resolve(DefaultArtifactResolver.java:444)     at org.eclipse.aether.internal.impl.DefaultArtifactResolver.resolveArtifacts(DefaultArtifactResolver.java:246)     at org.eclipse.aether.internal.impl.DefaultArtifactResolver.resolveArtifact(DefaultArtifactResolver.java:223)     at org.eclipse.aether.internal.impl.DefaultRepositorySystem.resolveArtifact(DefaultRepositorySystem.java:294)     at org.apache.maven.artifact.resolver.DefaultArtifactResolver.resolve(DefaultArtifactResolver.java:212)     ... 40 more Caused by: org.eclipse.aether.transfer.ArtifactNotFoundException: Failure to find com.google.protobuf:protoc:exe:3.0.0-beta-3 in https://repo.maven.apache.org/maven2 was cached in the local repository, resolution will not be reattempted until the update interval of central has elapsed or updates are forced     at org.eclipse.aether.internal.impl.DefaultUpdateCheckManager.newException(DefaultUpdateCheckManager.java:231)     at org.eclipse.aether.internal.impl.DefaultUpdateCheckManager.checkArtifact(DefaultUpdateCheckManager.java:206)     at org.eclipse.aether.internal.impl.DefaultArtifactResolver.gatherDownloads(DefaultArtifactResolver.java:585)     at org.eclipse.aether.internal.impl.DefaultArtifactResolver.performDownloads(DefaultArtifactResolver.java:503)     at org.eclipse.aether.internal.impl.DefaultArtifactResolver.resolve(DefaultArtifactResolver.java:421)     ... 44 more

Edit 2 , The Effective POM:

Effective POMs, after inheritance, interpolation, and profiles are applied:  <!-- ====================================================================== --> <!--                                                                        --> <!-- Generated by Maven Help Plugin on 2016-06-01T01:19:06                  --> <!-- See: http://maven.apache.org/plugins/maven-help-plugin/                --> <!--                                                                        --> <!-- ====================================================================== -->  <!-- ====================================================================== --> <!--                                                                        --> <!-- Effective POM for project 'com.GroupName:ProjectName:jar:1.0-SNAPSHOT'  --> <!--                                                                        --> <!-- ====================================================================== -->  <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">   <modelVersion>4.0.0</modelVersion>   <groupId>com.GroupName</groupId>   <artifactId>ProjectName</artifactId>   <version>1.0-SNAPSHOT</version>   <name>ProjectName</name>   <url>http://maven.apache.org</url>   <properties>     <build-helper-maven-plugin.version>1.9.1</build-helper-maven-plugin.version>     <java.version>1.8</java.version>     <junit.version>4.12</junit.version>     <maven-antrun-plugin.version>1.8</maven-antrun-plugin.version>     <maven-dependency-plugin.version>2.9</maven-dependency-plugin.version>     <maven-shade-plugin.version>2.4.3</maven-shade-plugin.version>     <os-maven-plugin.version>1.5.0.Final</os-maven-plugin.version>     <os.detected.arch>x86_64</os.detected.arch>     <os.detected.classifier>windows-x86_64</os.detected.classifier>     <os.detected.name>windows</os.detected.name>     <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>     <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>     <protobuf-java-format.version>1.2</protobuf-java-format.version>     <protobuf.input.directory>E:\Development\GroupName\ProjectFolder/proto</protobuf.input.directory>     <protobuf.output.directory.cpp>E:\Development\GroupName\ProjectFolder\target/libcpp</protobuf.output.directory.cpp>     <protobuf.output.directory.java>E:\Development\GroupName\ProjectFolder\target/generated-sources</protobuf.output.directory.java>     <protobuf.version>3.0.0-beta-3</protobuf.version>   </properties>   <dependencies>     <dependency>       <groupId>com.google.protobuf</groupId>       <artifactId>protobuf-java</artifactId>       <version>3.0.0-beta-3</version>       <scope>compile</scope>     </dependency>     <dependency>       <groupId>com.googlecode.protobuf-java-format</groupId>       <artifactId>protobuf-java-format</artifactId>       <version>1.2</version>       <scope>compile</scope>     </dependency>     <dependency>       <groupId>junit</groupId>       <artifactId>junit</artifactId>       <version>4.12</version>       <scope>test</scope>     </dependency>   </dependencies>   <repositories>     <repository>       <snapshots>         <enabled>false</enabled>       </snapshots>       <id>central</id>       <name>Central Repository</name>       <url>https://repo.maven.apache.org/maven2</url>     </repository>   </repositories>   <pluginRepositories>     <pluginRepository>       <releases>         <updatePolicy>never</updatePolicy>       </releases>       <snapshots>         <enabled>false</enabled>       </snapshots>       <id>central</id>       <name>Central Repository</name>       <url>https://repo.maven.apache.org/maven2</url>     </pluginRepository>   </pluginRepositories>   <build>     <sourceDirectory>E:\Development\GroupName\ProjectFolder\src\main\java</sourceDirectory>     <scriptSourceDirectory>E:\Development\GroupName\ProjectFolder\src\main\scripts</scriptSourceDirectory>     <testSourceDirectory>E:\Development\GroupName\ProjectFolder\src\test\java</testSourceDirectory>     <outputDirectory>E:\Development\GroupName\ProjectFolder\target\classes</outputDirectory>     <testOutputDirectory>E:\Development\GroupName\ProjectFolder\target\test-classes</testOutputDirectory>     <extensions>       <extension>         <groupId>kr.motd.maven</groupId>         <artifactId>os-maven-plugin</artifactId>         <version>1.5.0.Final</version>       </extension>     </extensions>     <resources>       <resource>         <directory>E:\Development\GroupName\ProjectFolder\src\main\resources</directory>       </resource>     </resources>     <testResources>       <testResource>         <directory>E:\Development\GroupName\ProjectFolder\src\test\resources</directory>       </testResource>     </testResources>     <directory>E:\Development\GroupName\ProjectFolder\target</directory>     <finalName>ProjectName</finalName>     <pluginManagement>       <plugins>         <plugin>           <artifactId>maven-antrun-plugin</artifactId>           <version>1.3</version>         </plugin>         <plugin>           <artifactId>maven-assembly-plugin</artifactId>           <version>2.2-beta-5</version>         </plugin>         <plugin>           <artifactId>maven-dependency-plugin</artifactId>           <version>2.8</version>         </plugin>         <plugin>           <artifactId>maven-release-plugin</artifactId>           <version>2.3.2</version>         </plugin>         <plugin>           <groupId>org.eclipse.m2e</groupId>           <artifactId>lifecycle-mapping</artifactId>           <version>1.0.0</version>           <configuration>             <lifecycleMappingMetadata>               <pluginExecutions>                 <pluginExecution>                   <pluginExecutionFilter>                     <groupId>org.apache.maven.plugins</groupId>                     <artifactId>maven-antrun-plugin</artifactId>                     <versionRange>[1.7,)</versionRange>                     <goals>                       <goal>run</goal>                     </goals>                   </pluginExecutionFilter>                   <action>                     <ignore />                     <execute>                       <runOnConfiguration>true</runOnConfiguration>                       <runOnIncremental>true</runOnIncremental>                     </execute>                   </action>                 </pluginExecution>               </pluginExecutions>             </lifecycleMappingMetadata>           </configuration>         </plugin>       </plugins>     </pluginManagement>     <plugins>       <plugin>         <artifactId>maven-compiler-plugin</artifactId>         <version>3.3</version>         <executions>           <execution>             <id>default-compile</id>             <phase>compile</phase>             <goals>               <goal>compile</goal>             </goals>             <configuration>               <source>1.8</source>               <target>1.8</target>               <encoding>UTF-8</encoding>             </configuration>           </execution>           <execution>             <id>default-testCompile</id>             <phase>test-compile</phase>             <goals>               <goal>testCompile</goal>             </goals>             <configuration>               <source>1.8</source>               <target>1.8</target>               <encoding>UTF-8</encoding>             </configuration>           </execution>         </executions>         <configuration>           <source>1.8</source>           <target>1.8</target>           <encoding>UTF-8</encoding>         </configuration>       </plugin>       <plugin>         <artifactId>maven-resources-plugin</artifactId>         <version>2.7</version>         <executions>           <execution>             <id>default-testResources</id>             <phase>process-test-resources</phase>             <goals>               <goal>testResources</goal>             </goals>             <configuration>               <encoding>UTF-8</encoding>             </configuration>           </execution>           <execution>             <id>default-resources</id>             <phase>process-resources</phase>             <goals>               <goal>resources</goal>             </goals>             <configuration>               <encoding>UTF-8</encoding>             </configuration>           </execution>         </executions>         <configuration>           <encoding>UTF-8</encoding>         </configuration>       </plugin>       <plugin>         <artifactId>maven-dependency-plugin</artifactId>         <version>2.9</version>         <executions>           <execution>             <id>copy-protoc</id>             <phase>generate-sources</phase>             <goals>               <goal>copy</goal>             </goals>             <configuration>               <artifactItems>                 <artifactItem>                   <groupId>com.google.protobuf</groupId>                   <artifactId>protoc</artifactId>                   <version>3.0.0-beta-3</version>                   <classifier>${os.detected.classifier}</classifier>                   <type>exe</type>                   <outputDirectory>E:\Development\GroupName\ProjectFolder\target</outputDirectory>                 </artifactItem>               </artifactItems>             </configuration>           </execution>         </executions>       </plugin>       <plugin>         <artifactId>maven-antrun-plugin</artifactId>         <version>1.8</version>         <executions>           <execution>             <id>exec-protoc</id>             <phase>generate-sources</phase>             <goals>               <goal>run</goal>             </goals>             <configuration>               <target>                 <property name="protoc.filename" value="protoc-3.0.0-beta-3-${os.detected.classifier}.exe" />                 <property name="protoc.filepath" value="E:\Development\GroupName\ProjectFolder\target/${protoc.filename}" />                 <chmod file="${protoc.filepath}" perm="ugo+rx" />                 <mkdir dir="E:\Development\GroupName\ProjectFolder\target/generated-sources" />                 <mkdir dir="E:\Development\GroupName\ProjectFolder\target/libcpp" />                 <path id="protobuf.input.filepaths.path">                   <fileset dir="E:\Development\GroupName\ProjectFolder/proto">                     <include name="**/*.proto" />                   </fileset>                 </path>                 <pathconvert property="protobuf.input.filepaths" pathsep=" " refid="protobuf.input.filepaths.path" />                 <exec failonerror="true" executable="${protoc.filepath}">                   <arg value="-I" />                   <arg value="E:\Development\GroupName\ProjectFolder/proto" />                   <arg value="--java_out" />                   <arg value="E:\Development\GroupName\ProjectFolder\target/generated-sources" />                   <arg value="--cpp_out" />                   <arg value="E:\Development\GroupName\ProjectFolder\target/libcpp" />                   <arg line="${protobuf.input.filepaths}" />                 </exec>               </target>             </configuration>           </execution>         </executions>       </plugin>       <plugin>         <groupId>org.codehaus.mojo</groupId>         <artifactId>build-helper-maven-plugin</artifactId>         <version>1.9.1</version>         <executions>           <execution>             <id>add-classes</id>             <phase>generate-sources</phase>             <goals>               <goal>add-source</goal>             </goals>             <configuration>               <sources>                 <source>E:\Development\GroupName\ProjectFolder\target/generated-sources</source>               </sources>             </configuration>           </execution>         </executions>       </plugin>       <plugin>         <artifactId>maven-clean-plugin</artifactId>         <version>2.5</version>         <executions>           <execution>             <id>default-clean</id>             <phase>clean</phase>             <goals>               <goal>clean</goal>             </goals>           </execution>         </executions>       </plugin>       <plugin>         <artifactId>maven-jar-plugin</artifactId>         <version>2.4</version>         <executions>           <execution>             <id>default-jar</id>             <phase>package</phase>             <goals>               <goal>jar</goal>             </goals>           </execution>         </executions>       </plugin>       <plugin>         <artifactId>maven-surefire-plugin</artifactId>         <version>2.12.4</version>         <executions>           <execution>             <id>default-test</id>             <phase>test</phase>             <goals>               <goal>test</goal>             </goals>           </execution>         </executions>       </plugin>       <plugin>         <artifactId>maven-install-plugin</artifactId>         <version>2.4</version>         <executions>           <execution>        
标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!