簡體   English   中英

如何為 Z3 設置 Java 開發環境

[英]How to setup a Java development environment for Z3

如何為 Z3 SMT 求解器設置 Java 開發環境?

注意:由作者撰寫並回答,請參閱我可以回答我自己的問題嗎? .

  • Z3 是一個帶有 Java 綁定的 C++ 應用程序。 首先從https://github.com/Z3Prover/z3/releases下載本機發行版,在我們的例子中是 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

將在<mavenrepo>/repository/com/microsoft/z3/4.8.7/創建一個名為z3-4.8.7.jar的 jar。 它可以作為依賴項添加到 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 請注意,文件夾結構與包名稱不匹配,因此您可能希望在使用 IDE 注冊文件之前將文件復制到com/microsoft/z3

編輯 - macOS不幸的是,在 macOS 上設置庫路徑( DYLD_LIBRARY_PATH )不起作用,有關詳細信息和解決方案,請參見此處: https : //github.com/Z3Prover/z3/issues/294

Z3-TurnKey是一個不錯的項目,它發布了一個 Maven 工件,其中包含在運行時鏈接的 OS X、Windows 和 Linux 的預構建本機庫。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM