gpt4 book ai didi

java - 如何为 Z3 设置 Java 开发环境

转载 作者:行者123 更新时间:2023-12-03 21:59:59 27 4
gpt4 key购买 nike

如何为 Z3 SMT 求解器设置 Java 开发环境?

注:由作者撰写和回答,见 Can I answer my own question? .

最佳答案

  • Z3 是一个带有 Java 绑定(bind)的 C++ 应用程序。首先从 https://github.com/Z3Prover/z3/releases 下载 native 发行版,在我们的例子中是 Ubuntu(类似的方法应该适用于 macOS)。 ,例如:z3-4.8.7-x64-ubuntu-16.04.zip .
  • 将构建解压到 Z3_DIR .为简化起见,有以下导出:
  •  export Z3_DIR=<some_path>/z3-4.8.7-x64-ubuntu-16.04
    export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$Z3_DIR/bin
  • 下载与您的 Z3 版本匹配的 Java 示例,编译并运行它:

  • $ curl https://raw.githubusercontent.com/Z3Prover/z3/z3-4.8.7/examples/java/JavaExample.java > JavaExample.java
    $ javac -cp $Z3_DIR/bin/com.microsoft.z3.jar JavaExample.java
    $ java -cp $Z3_DIR/bin/com.microsoft.z3.jar:. JavaExample

    如果一切顺利,您应该会看到示例执行没有错误。
  • 要将 Z3 jar 与 Maven 一起使用,请将其安装到本地 maven 存储库中:

  • $ mvn install:install-file \
    -Dfile=$Z3_DIR/bin/com.microsoft.z3.jar \
    -DgroupId=com.microsoft \
    -DartifactId=z3 \
    -Dversion=4.8.7 \
    -Dpackaging=jar \
    -DgeneratePom=true

    一个名为 z3-4.8.7.jar 的 jar 将在 <mavenrepo>/repository/com/microsoft/z3/4.8.7/ 中创建.它可以作为依赖项添加到 maven 项目中:

         <dependency>
    <groupId>com.microsoft</groupId>
    <artifactId>z3</artifactId>
    <version>4.8.7</version>
    </dependency>
  • 很高兴有 Z3 API Java 源代码,这些都可以在 Github 上找到:https://github.com/Z3Prover/z3/tree/z3-4.8.7/src/api/java .请注意,文件夹结构与软件包名称不匹配,因此您可能需要将文件复制到 com/microsoft/z3在将它们注册到 IDE 之前。

  • 编辑-macOS
    不幸的是,在 macOS 上设置库路径( DYLD_LIBRARY_PATH )不起作用,有关一些详细信息和解决方案,请参见此处: https://github.com/Z3Prover/z3/issues/294

    关于java - 如何为 Z3 设置 Java 开发环境,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60403775/

    27 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com