在Windows 10(Intellij IDEA)上安装带有gradle项目的Google或工具

时间:2018-09-26 13:14:02

标签: java visual-studio gradle intellij-idea or-tools

是否可以在IntelliJ Idea上安装库?

还是我必须使用Visual Studio 2017?

如果是,如何安装?我发现Google文档令人困惑。

2 个答案:

答案 0 :(得分:1)

万一其他人来了,这是我使用Gradle构建和运行OR工具的配置。

首先,我有一个顶层项目,其中有与应用程序相关的代码,称为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。不要忘记在访问OR工具的Java类中加载jniortools库:

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

显然,您不需要子模块即可完成此工作-这只是我的实现。希望这会有所帮助。

答案 1 :(得分:0)

我们提供预构建的二进制档案 cf https://developers.google.com/optimization/install/java/windows#installing-or-tools,因此您不需要Visual Studio仅使用它...

然后在Gradle中使用它,您需要提取lib/com.google.ortools.jarlib/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库路径。...