线程“ main”中的异常java.lang.NoSuchMethodError:com.google.common.base.Preconditions.checkArgument(ZLjava / lang / String; CLjava / lang / Object;)V
我已经为Telegram创建了一个聊天机器人,并且尝试将DialogFlow与它一起使用。我正在使用Java在MySQL中处理该聊天机器人应该与之交互的数据库。
我尝试将不同版本的番石榴添加到依赖项都没有用。当我执行“ MVN依赖项:树”时,终端显示“ com.google.guava:guava:jar:27.1-android:compile”。所以我尝试添加一个,但是也没有用。
这是我当前的pom.xml(它具有27.1-jre的Guava版本,但我之前确实尝试过27.1-android的版本):
<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>chatbot</groupId>
<artifactId>Av3</artifactId>
<version>1.0-SNAPSHOT</version>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>7</source>
<target>7</target>
</configuration>
</plugin>
</plugins>
</build>
<dependencies>
<dependency>
<groupId>com.google.cloud</groupId>
<artifactId>google-cloud-dialogflow</artifactId>
<version>0.96.0-alpha</version>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.12</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>com.google.guava</groupId>
<artifactId>guava</artifactId>
<version>27.1-jre</version>
</dependency>
<dependency>
<groupId>org.apache.httpcomponents</groupId>
<artifactId>httpcore</artifactId>
<version>4.4.8</version>
</dependency>
</dependencies>
</project>
这是我要执行的代码:
List<String> ln = new ArrayList<String>();
ln.add("hello");
ln.add("create playlist");
try {
Map<String, QueryResult> mn = DetectIntentTexts.detectIntentTexts("newagent-gbrsbh", ln, "20er", "en-US");
for (Map.Entry<String, QueryResult> me: mn.entrySet()){
System.out.print(me.getKey()+":");
System.out.println(me.getValue());
}
} catch (Exception e) {
e.printStackTrace();
}
DetectIntentTexts类是从here复制的