Java 在Android Studio中安装并集成Apache OpenNLP
我正在开发一个聊天机器人android应用程序,我想使用ApacheOpenNLP库。我遵循这一点下载并使用OpenNLP。下载完zip文件后,我被告知将2个jar文件作为库添加到Android Studio中,我已经这样做了。然后,我将编译选项添加到modules目录的build.gradle文件中。当我试着运行这个应用程序时,我得到了一个Gradle构建错误,如下所示Java 在Android Studio中安装并集成Apache OpenNLP,java,android,gradle,chatbot,opennlp,Java,Android,Gradle,Chatbot,Opennlp,我正在开发一个聊天机器人android应用程序,我想使用ApacheOpenNLP库。我遵循这一点下载并使用OpenNLP。下载完zip文件后,我被告知将2个jar文件作为库添加到Android Studio中,我已经这样做了。然后,我将编译选项添加到modules目录的build.gradle文件中。当我试着运行这个应用程序时,我得到了一个Gradle构建错误,如下所示 > Error:Error converting bytecode to dex: Cause: Dex cannot
> Error:Error converting bytecode to dex:
Cause: Dex cannot parse version 52 byte code.
This is caused by library dependencies that have been compiled using Java 8 or above.
If you are using the 'java' gradle plugin in a library submodule add
targetCompatibility = '1.7'
sourceCompatibility = '1.7'
to that submodule's build.gradle file.
然后,我在gradle文件中添加了以下行
compileOptions{
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
}
完成此操作后,当我尝试运行代码时。我得到了这个失败的梯度同步
Error:Jack is required to support java 8 language features. Either enable Jack or remove sourceCompatibility JavaVersion.VERSION_1_8.
Error:Jack is required to support java 8 language features. Either enable Jack or remove sourceCompatibility JavaVersion.VERSION_1_8.
然后我将以下内容添加到defaultConfig块内的gradle文件中
jackOptions{
enabled true
}
在此之后,当我尝试运行我的应用程序时,我会得到最大错误数
Error:Lambda coming from jar file need their interfaces on the classpath to be compiled, unknown interfaces are java.io.FileFilter
Error:Lambda coming from jar file need their interfaces on the classpath to be compiled, unknown interfaces are java.io.FileFilter
Error:Lambda coming from jar file need their interfaces on the classpath to be compiled, unknown interfaces are java.io.FileFilter
Error:Default method void updateAdaptiveData(java.lang.String[] tokens, java.lang.String[] outcomes) not supported in Android API level less than 24
Error:Default method void clearAdaptiveData() not supported in Android API level less than 24
Error:Default method void reset() not supported in Android API level less than 24
Error:Default method void close() not supported in Android API level less than 24
Error:Execution failed for task ':app:transformClassesWithPreJackPackagedLibrariesForDebug'.
> com.android.build.api.transform.TransformException: com.android.builder.core.JackToolchain$ToolchainException: Jack compilation exception
谁能告诉我怎么办?我希望能够在我的应用程序中使用OpenNLP方法。我尝试过清理和重建,但徒劳无功 下面的渐变变化对我来说很好。 你可以试试
dependencies {
classpath 'com.android.tools.build:gradle:1.5.0'
}
android {
compileSdkVersion 23
buildToolsVersion '23.0.2'
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_7
targetCompatibility JavaVersion.VERSION_1_7
}
}
dependencies {
compile 'org.apache.opennlp:opennlp:1.6.0'
}