繁体   English   中英

pom.xml中的maven-protoc-plugin配置不正确

[英]maven-protoc-plugin configuration in pom.xml incorrect

问题我正在解决 :我需要一个针对Protobuf的Maven插件,并且从我的谷歌搜索中,我得出的结论是maven-protoc-plugin目前拥有最多的思想。 此插件的最新活动是在2013年3月,这也非常令人鼓舞(链接: https//code.google.com/p/protobuf/issues/detail?id = 476

我的障碍 :我无法让插件工作。 具体来说,我无法下载插件。 我在Eclipse中使用Maven [用于Web开发人员的Eclipse Java EE IDE,版本:Juno Service Release 1 Build id:20120920-0800]我已将我添加的配置的相关片段放在下面的pom.xml中。 有多个引用引导我进行此配置,但我不允许在此处发布它们。 我试图以某种方式引用它们(以获取完整信息),并注意到每个问题:

  • 参考1:在github(github.com)上,有一个位置
    sergei-ivanovSLASHmaven-protoc-plugin - 这有配置
    对于插件存储库,但此资源中提到的URL是404资源

  • 参考2:github HTTP位置(sergei-ivanov.github.io)在maven-protoc-pluginSLASHproject-summary.html上有一个HTML文件,它有一个
    下载不起作用的URL

  • 参考3:github位置(sergei-ivanov.github.io)在/maven-protoc-pluginSLASHusage.html上有另一个HTML文件 - 这个URL有一个片段,显示以下配置:maven-protoc-plugin,
    maven-compiler-plugin和protobuf-java依赖。 它不是
    有一个插件存储库配置。

我的XML在http://pastebin.com/VPyH3CPr上的pastebin上

我试图通过Eclipse Run Configuration使用以下命令在插件中运行目标目标 :maven-protoc-plugin:protobufcompile Profiles :dev

我收到以下消息: [INFO]扫描项目... [警告]缺少com.google.protobuf.tools:maven-protoc-plugin:jar:0.3.1的POM,没有可用的依赖项信息[警告]无法检索com.google.protobuf.tools:maven-protoc-plugin:0.3.1的插件描述符:插件com.google.protobuf.tools:maven-protoc-plugin:0.3.1或其中一个依赖项无法已解决:[ERROR]在当前项目和插件组[org.apache.maven.plugins,org.codehaus.mojo]中找不到前缀'maven-protoc-plugin'的插件,可从存储库[local(C: \\ Users \\ .m2 \\ repository),all-repos(/ artifactory / all-repos)] - > [帮助1]这里有一些其他错误。 [错误] [错误]有关错误和可能的解决方案的更多信息,请阅读以下文章:[错误] [帮助1]汇合/显示的URL / MAVEN / NoPluginFoundForPrefixException

问题:

  1. 我是否可以获得需要添加到POM的完整XML片段以使maven-protoc-plugin工作?
  2. 我列出的引用中的插件存储库位置似乎是死路一条。 那么,我可以获得插件的有效位置是什么?
  3. 或者,有人可以建议我的XML有什么问题吗? 错误输出显示我的配置在插件解析期间没有效果。
  4. 我对Maven相对较新,因此这个新手类型的问题:我可以像我一样(protobufcompile)定义插件的目标名称,还是Maven插件带有我无法更改的预定义名称?
  5. 与此条目中的主要问题切线相关:我创建Maven项目时创建了我的.m2目录,其中的所有内容都自动填充。 我的问题是:Maven从哪里获取它在settings.xml文件中配置的存储库位置?

如果你想要最初由David Trott维护的maven-protoc-plugin的 Sergei Ivanov fork ,只需下载Ivanov的一个关系 ,如0.3.1并手动安装。

cd maven-protoc-plugin-maven-protoc-plugin-0.3.1
mvn clean install

然后,只需按照站点使用指南来设置项目。

虽然我建议你坚持使用伊凡诺夫的叉子; 如果您不需要工具链支持或其他贡献功能,Trott的repo仍然可以启动并运行。

关于问题3-5 ......

3.或者,有人可以建议我的XML有什么问题吗? 错误输出显示我的配置在插件解析期间没有效果。

根据您提供的xml,当您尝试运行生命周期时,无法解决依赖关系的事实将导致错误。 您的目标之一也会导致错误,请参阅下文。

4.我对Maven相对较新,因此这个新手类型的问题:我可以像我一样(protobufcompile)定义插件的目标名称,还是Maven插件带有我无法更改的预定义名称?

不,你不能。 目标由您使用的插件定义。 阶段由maven定义,基本上只是构建生命周期中的不同位置

5.切入与此条目中的主要问题相关:我创建Maven项目时创建了我的.m2目录,其中的所有内容都自动填充。 我的问题是:Maven从哪里获取它在settings.xml文件中配置的存储库位置?

有一些中央存储库,我不知道我的头脑,但他们基本上持有所有的插件。

您还可以拥有私人存储库,这对于各个企业来说都很常见。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM