Установка Google or-tools с Gradle-проектом на Windows 10 (Intellij IDEA) - PullRequest
0 голосов
/ 26 сентября 2018

Можно ли установить библиотеку на IntelliJ Idea?

или мне нужно использовать Visual Studio 2017?

Если да, то как мне его установить?Я нахожу документацию Google запутанной.

Ответы [ 2 ]

0 голосов
/ 13 октября 2018

На случай, если кто-нибудь еще придет сюда, это моя конфигурация для сборки и запуска OR-инструментов с Gradle.

Прежде всего, у меня есть проект верхнего уровня, в котором у меня есть код, связанный с приложением, под названием suite, и модуль, в котором я отделил весь код, связанный с OR-Tools, под названием optimization.В модуле optimization у меня есть папка lib, которая содержит следующие файлы (не уверены, нужны ли они все):

com.google.ortools.jar
libcvrptw_lib.so
libdimacs.so
libjniortools.so
libortools.so

Как видите, здесь нет protobuf.jar-Это приходит позже.Затем я добавил следующее в мой существующий файл build.gradle верхнего уровня:

buildscript {
    repositories {
        mavenCentral()
    }
    dependencies {
        classpath 'com.google.protobuf:protobuf-gradle-plugin:0.8.6'
    }
    ...
}

apply plugin: 'application'

applicationDefaultJvmArgs = ["-Djava.library.path=optimization/lib"]

mainClassName = 'com.package.name.MainClass'

Обратите внимание, что для applicationDefaultJvmArgs вы должны изменить путь к папке lib.И, конечно же, обновите mainClassName до вашего основного класса.

И, наконец, в build.gradle моего optimization модуля я добавил следующие зависимости:

dependencies {
    compile files('lib/com.google.ortools.jar')
    compile 'com.google.protobuf:protobuf-java:3.0.0'
    ...
}

Вышекомпилирует ortools.jar из папки lib и загружает библиотеку protobuf-java из mavenCentral.

PS.Не забудьте загрузить в свой класс Java библиотеку jniortools, которая обращается к OR-инструментам:

static {
    System.loadLibrary("jniortools");
}

Очевидно, вам не нужны субмодули для этой работы - это всего лишь моя реализация,Надеюсь, это поможет.

0 голосов
/ 28 сентября 2018

Мы предоставляем готовые бинарные архивы cf https://developers.google.com/optimization/install/java/windows#installing-or-tools, поэтому вам не нужна Visual Studio, чтобы только потреблять его ...

Затем, чтобы использовать его в Gradle, вам нужно извлечь lib/com.google.ortools.jar, lib/protobuf.jar, JNI-файл jniortools.dll, который также может зависеть от ortools.lib.

Взгляните на правило Makefile rjava, чтобы узнать параметры для настройки и попробуйте добавить егов ваш проект gradle ...

Примерно так:

javac -d output_dir -cp lib/com.google.ortools.jar;lib/protobuf.jar YourFile.java
java -Djava.library.path=lib -cp output_dir;lib/com.google.ortools.jar;lib/protobuf.jar YourFile

Итак, вы должны знать, как в Gradle управляются путь к классам и пути к библиотекам java ....

...