Как использовать JENA онтологии API на Android? - PullRequest
0 голосов
/ 12 мая 2018

Я новичок в этой области. Я построил проект онтологии на затмение с помощью Джена. Тем не менее, я хотел бы использовать его на Android. Я нашел androidjena, и следуйте инструкции здесь MinSdkVersion 21 моего приложения для Android. Я загружаю 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

Я что-то пропустил? или я поставил модули Jena не туда? Помогите пожалуйста выяснить в чем проблема. Спасибо!

1 Ответ

0 голосов
/ 12 мая 2018

Проблема № 1 - Согласно инструкции на странице, на которую вы ссылаетесь, вы должны добавить MavenLocal() в раздел repositories файла build.gradle.Похоже, вы этого не сделали.

ИСПРАВЛЕНИЕ - согласно примеру в Руководстве по Gradle на стр. 460 1 оно должнобыть mavenLocal().Я думаю, что Gradle чувствителен к регистру.Если это так, то ошибочны инструкции Jena.

Проблема № 2 - И в соответствии с инструкциями предполагается сказать «компилировать» ... но я понимаю, что в gradle 3.0

* изменилось1016 * Проблема № 3 - В инструкциях также говорится:

В настоящее время артефакты не развертываются в общедоступном хранилище.Если вы хотите использовать их в команде, вы должны развернуть их в своем собственном репозитории Maven или добавить файлы jar в качестве неуправляемых зависимостей.

Вы это сделали?Или вы сделали вместо этого следующее?

Создайте измененные пакеты Jena:

$ cd jena-android
$ mvn install

Это позволит установить измененные пакеты Jena, работающие на Android, в ваш локальный репозиторий Maven.

Дело в том, что вы не можете просто сказать Maven / Gradle вытащить артефакты Jena из публичного репозитория Maven.Артефакты должны быть встроены и установлены в вашем локальном репо и (если вы работаете в команде) переданы в ваше (обычно частное) командное репо.


1 - ... или поискдля «Использование сценария инициализации для выполнения дополнительной настройки до оценки проектов».

...