[英]Maven build: Need edit pom.xml before build
我是 maven 的初学者,我正在尝试构建Signal CDS当我运行mvn package
进行构建时,出现错误:
[ERROR] COMPILATION ERROR :
[INFO] -------------------------------------------------------------
[ERROR] /home/t/Documents/ContactDiscoveryService/client/src/main/java/org/whispersystems/contactdiscovery/ContactDiscoveryClient.java:[13,63] cannot find symbol
symbol: class SignalContactDiscoveryUrl
location: package org.whispersystems.signalservice.internal.configuration
[ERROR] /home/t/Documents/ContactDiscoveryService/client/src/main/java/org/whispersystems/contactdiscovery/ContactDiscoveryClient.java:[167,5] cannot find symbol
symbol: class SignalContactDiscoveryUrl
location: class org.whispersystems.contactdiscovery.ContactDiscoveryClient
[ERROR] /home/t/Documents/ContactDiscoveryService/client/src/main/java/org/whispersystems/contactdiscovery/ContactDiscoveryClient.java:[167,57] cannot find symbol
symbol: class SignalContactDiscoveryUrl
location: class org.whispersystems.contactdiscovery.ContactDiscoveryClient
[ERROR] /home/t/Documents/ContactDiscoveryService/client/src/main/java/org/whispersystems/contactdiscovery/ContactDiscoveryClient.java:[190,42] cannot find symbol
symbol: method getRegisteredUsers(java.security.KeyStore,java.util.Set<java.lang.String>,java.lang.String)
location: variable serviceManager of type org.whispersystems.signalservice.api.SignalServiceAccountManager
当我使用 docker 构建时,我遇到了同样的错误。
但是当我编辑顶级pom.xml
,只需添加一个换行符或一个空格,它就成功了。
你能向我解释为什么会发生这种情况以及如何解决它
谢谢
编辑 1:我使用 maven 3.6.2 和 java 11
$ mvn -v
Apache Maven 3.6.2 (40f52333136460af0dc0d7232c0dc0bcf0d9e117; 2019-08-27T22:06:16+07:00)
Maven home: /home/t/Tools/apache-maven-3.6.2
Java version: 11.0.2, vendor: Oracle Corporation, runtime: /usr/lib/jvm/jdk-11.0.2
Default locale: en_US, platform encoding: UTF-8
OS name: "linux", version: "4.15.0-72-generic", arch: "amd64", family: "unix"
以下步骤在这里工作
$ git clone https://github.com/signalapp/ContactDiscoveryService.git
将client/pom.xml
的依赖版本从2.7.8
到2.9.0
。 因为类SignalContactDiscoveryUrl
是在2.8.1
版本之后引入的
<dependency>
<groupId>org.whispersystems</groupId>
<artifactId>signal-service-java</artifactId>
<version>2.9.0</version>
</dependency>
用
$ cd ContactDiscoveryService
$ mvn package
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.