java - 如何在android上使用jena ontology api?
问题描述
我是这个领域的新手。我使用jena在eclipse上构建了一个本体项目。但是,我想在 Android 上使用它。我找到了 androidjena,并按照此处的说明进行操作 我的 android 应用程序的 minSdkVersion 21。我下载了 Jena 模块,然后放入 D:\myproject.gradle
在我在 build.gradle 上添加这个之后:
allprojects {
repositories {
google()
jcenter()
MavenLocal()
}
}
dependencies {
...
implementation 'mobi.seus.jena:jena-android-arq:2.13.0'
}
android {
...
packagingOptions {
exclude 'META-INF/LICENSE'
exclude 'META-INF/NOTICE'
exclude 'META-INF/DEPENDENCIES'
exclude 'META-INF/LICENSE.txt'
exclude 'META-INF/NOTICE.txt'
}
然后我同步了项目,这里出现错误
Could not find method MavenLocal() for arguments [] on repository container
我错过了什么吗?还是我把耶拿模块放错了地方?请帮助找出问题所在。谢谢!
解决方案
问题 #1 - 根据您链接到的页面上的说明,您应该添加MavenLocal()
到文件的repositories
部分build.gradle
。你似乎没有这样做。
更正- 根据Gradle 手册第 460 页1中的示例,它应该是mavenLocal()
。我认为 Gradle 是区分大小写的。如果是,则 Jena 指令有问题。
问题 #2 - 根据说明,它应该说“编译”......但我认为在 gradle 3.0 中发生了变化
问题 #3 - 说明还说:
目前,工件未部署到公共存储库。如果您想在团队中使用它们,您应该将它们部署到您自己的 Maven 存储库或将 jars 添加为非托管依赖项。
你这样做了吗?或者您是否已执行以下操作?
创建修改后的 Jena 包:
$ cd jena-android $ mvn install
这会将在 Android 上运行的修改后的 Jena 包安装到您的本地 Maven 存储库中。
关键是您不能只告诉 Maven / Gradle 从公共 Maven 存储库中提取 Jena 工件。工件必须构建并安装到您的本地存储库中,并且(如果您在团队中工作)推送到您的(通常是私有的)团队存储库。
1 - ...或搜索“在评估项目之前使用初始化脚本执行额外配置”。
推荐阅读
- javascript - 使用 jQuery 的 .append() 方法对 ":after" 选择器进行样式化问题
- flutter - Flutter Web如何在使用image_picker_for_web从桌面选择后获取图像路径或对图像进行操作
- c - C - 检查给定参数是否为自然数
- algorithm - 如何计算 QR 码的输出数据位大小?
- java - Spring Boot 应用程序 Heroku PostgreSQL 错误:GenerationTarget 遇到异常接受命令:执行 DDL 时出错 ...通过 JDBC 语句
- django - 如何将约束添加到强制两个字段匹配的 Django 模型?
- javascript - 如何使用来自 sweetalerts2 的 JavaScript 重定向到其他页面
- flutter - 如何使用增强现实在颤振中创建面部应用
- java - 如何在json中获取具有相同变量名的值
- c++ - 由 CreateCompatibleBitmap 创建的 HBITMAP 是黑白的