【问题标题】:How to download protobuf-socket-rpc maven repository?如何下载 protobuf-socket-rpc maven 存储库?
【发布时间】:2020-03-10 11:46:46
【问题描述】:

我正在尝试下载 protobuf-socket-rpc 存储库,以便我可以使用类似的类

com.googlecode.protobuf.socketrpc.RpcConnectionFactory;

在java中。我的 Maven 文件如下所示:

<?xml version="1.0" encoding="utf-8"?>
<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.example</groupId>
    <artifactId>GroovyExample</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <packaging>jar</packaging>
    <name>MMAMatcherGroovyTest</name>

    <dependencies>
    <dependency>
        <groupId>com.googlecode.protobuf.socketrpc</groupId>
        <artifactId>protobuf_socketrpc</artifactId>
        <version>1.3.2</version>
    </dependency>
    </dependencies>
</project>

然而,mvn install 命令首先返回一个警告:

[WARNING] The POM for com.googlecode.protobuf.socketrpc:protobuf_socketrpc:jar:1.3.2
is missing, no dependency information available

后来出现错误

[ERROR] Failed to execute goal on project GroovyExample: Could not resolve dependencies for 
project com.example:GroovyExample:jar:0.0.1-SNAPSHOT: Failure to find 
com.googlecode.protobuf.socketrpc:protobuf_socketrpc:jar:1.3.2 in 
http://maven2:8081/repository/neurotechnology/ was cached in the local repository, 
resolution will not be reattempted until the update interval of neurotec has elapsed
or updates are forced

我在一家公司工作,maven 首先尝试从我们的本地数据库下载存储库。 如何更新pom.xml 文件以使maven 也可以下载protobuf-socket-rpc 存储库

【问题讨论】:

标签: java maven grpc-java


【解决方案1】:

我在 maven Central 上找不到 protobuf_socketrpc 工件(错误消息与我一致)。这是正确的工件名称吗?还是在本地(本地 maven 或您公司的 maven)发布?

我在 github 上找到了该库:https://github.com/sdeo/protobuf-socket-rpc/blob/master/java/pom.xml。看起来该库没有发布。你需要在本地构建它来解决它。

git clone https://github.com/sdeo/protobuf-socket-rpc.git
cd protobuf-socket-rpc/java
#edit pom.xml to use protobuf-java 2.4.1 (2.4.0 is not published)
mvn install

安装到本地maven后,你应该可以构建上面的例子了。

【讨论】:

  • 这就是我所说的图书馆。问题是我无法在本地安装它,因为当我将代码提交到代码库时,自动测试将运行并且他们不会在本地安装 repo。
  • 好吧,如果您想通过 CI,您需要将该库发布到您公司的工件中。否则,即使你提交代码,你公司的其他人也无法构建。
【解决方案2】:

Maven 从本地 pom.xml 和 settings.xml 中查找可用存储库列表以查看 jar。

在您的情况下,它是从 http://maven2:8081/repository/neurotechnology/ 搜索的。 在本地 pom.xml 或全局 settings.xml 的 repositories 标签中添加可以下载 jar 的存储库

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-12-04
    • 2012-09-30
    • 2011-09-17
    • 2012-02-26
    • 2017-12-12
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多