I can't build DDR (ddr.jar) from source because of lack of IBM's JAR files.
I cloned OpenJ9 from GitHub.
Then I changed directory to debugtool, and executed ant's xml.
cd [OPENJ9_HOME]/debugtools/DDR_VM $ ant -f compile_ddr.xml Buildfile: /Users/koichi.sakata/code/openj9/debugtools/DDR_VM/compile_ddr.xml BUILD FAILED /Users/koichi.sakata/code/openj9/debugtools/DDR_VM/compile_ddr.xml:62: Problem: failed to create task or type if Cause: The name is undefined. Action: Check the spelling. Action: Check that any custom tasks/types have been declared. Action: Check that any <presetdef>/<macrodef> declarations have taken place.
This message means that we need Ant-Contrib Tasks. So I put it in lib directory and change the xml file.
<taskdef resource="net/sf/antcontrib/antlib.xml"> <classpath> <pathelement location="./lib/ant-contrib.jar" /> </classpath> </taskdef>
Run ant again.
$ ant -f compile_ddr.xml Buildfile: /Users/koichi.sakata/code/openj9/debugtools/DDR_VM/compile_ddr.xml clean.bin: [delete] Deleting directory /Users/koichi.sakata/code/openj9/debugtools/DDR_VM/output/bin [delete] Deleting directory /Users/koichi.sakata/code/openj9/debugtools/DDR_VM/output/findbugs [shellscript] rmdir: output/bin/emma: No such file or directory [shellscript] rmdir: output/bin: No such file or directory [shellscript] rmdir: output/findbugs: No such file or directory [shellscript] Result: 1 compile.setup: [mkdir] Created dir: /Users/koichi.sakata/code/openj9/debugtools/DDR_VM/output/bin [mkdir] Created dir: /Users/koichi.sakata/code/openj9/debugtools/DDR_VM/output/bin/j9_core [mkdir] Created dir: /Users/koichi.sakata/code/openj9/debugtools/DDR_VM/output/bin/j9_core_tests [mkdir] Created dir: /Users/koichi.sakata/code/openj9/debugtools/DDR_VM/output/findbugs [mkdir] Created dir: /Users/koichi.sakata/code/openj9/debugtools/DDR_VM/output/findbugs/results [mkdir] Created dir: /Users/koichi.sakata/code/openj9/debugtools/DDR_VM/output/findbugs/unpack [mkdir] Created dir: /Users/koichi.sakata/code/openj9/debugtools/DDR_VM/output/bin/emma compile: compile.j9_core: compile.j9_core.minmum: [echo] Compiling j9_core excluding vm 23/24/26/27/28/29/29_00 [echo] JAVAC ARGS: [echo] destdir = output/bin/j9_core [echo] src.level = 1.9 [echo] target.level = 1.9 [echo] build.compiler.java = javac [echo] Source Paths: [echo] - j9_core_src = ../DDR_VM/src [echo] Classpaths : [echo] - dtfj.jar = ../../RAS_Binaries/dtfj.jar [echo] - dtfj-j9.jar = ../DDR_VM/lib/dtfj.j9-head.jar [echo] - ibmjzos.jar = ../DDR_VM/lib/ibmjzos.jar [echo] - junit.jar = ../DDR_VM/lib/junit.jar [echo] - traceformat.jar = ../../RAS_Binaries/traceformat.jar [javac] /Users/koichi.sakata/code/openj9/debugtools/DDR_VM/compile_ddr.xml:209: warning: 'includeantruntime' was not set, defaulting to build.sysclasspath=last; set to false for repeatable builds [javac] Compiling 368 source files to /Users/koichi.sakata/code/openj9/debugtools/DDR_VM/output/bin/j9_core [javac] 警告:[options] --add-exportsオプション内にモジュール名が見つかりません: com.ibm.dtfj [javac] 警告:[options] --add-exportsオプション内にモジュール名が見つかりません: com.ibm.traceformat [javac] /Users/koichi.sakata/code/openj9/debugtools/DDR_VM/src/com/ibm/j9ddr/corereaders/tdump/TDumpReader.java:78: エラー: パッケージcom.ibm.jzosは存在しません [javac] import com.ibm.jzos.ZFile; [javac] ^ [javac] /Users/koichi.sakata/code/openj9/debugtools/DDR_VM/src/com/ibm/j9ddr/corereaders/tdump/zebedee/dumpreader/MVSFileReader.java:33: エラー: パッケージcom.ibm.jzosは存在しません [javac] import com.ibm.jzos.ZFile; [javac] ^ [javac] /Users/koichi.sakata/code/openj9/debugtools/DDR_VM/src/com/ibm/j9ddr/corereaders/tdump/zebedee/dumpreader/MVSFileReader.java:55: エラー: シンボルを見つけられません [javac] private ZFile dataset; // dump dataset [javac] ^ [javac] シンボル: クラス ZFile [javac] 場所: クラス MVSFileReader [javac] /Users/koichi.sakata/code/openj9/debugtools/DDR_VM/src/com/ibm/j9ddr/libraries/DDRLibraryAdapter.java:34: エラー: パッケージcom.ibm.dtfj.imageは存在しません [javac] import com.ibm.dtfj.image.CorruptDataException; [javac] ^ ...
In compiling two modules, com.ibm.dtfj and com.ibm.traceformat weren't found.
<property name="dtfj.jar" value="${dtfj_interface_dir}/dtfj.jar"/> <property name="dtfj-j9.jar" value="${j9_core_lib}/dtfj.j9-head.jar"/> ... <property name="compilerarg.javac.addexports" value="--add-exports java.base/jdk.internal.org.objectweb.asm=ALL-UNNAMED,com.ibm.dtfj --add-exports com.ibm.dtfj/com.ibm.dtfj.utils=ALL-UNNAMED --add-exports com.ibm.dtfj/com.ibm.dtfj.utils.file=ALL-UNNAMED --add-exports com.ibm.traceformat/com.ibm.jvm.trace.format.api=ALL-UNNAMED"/>
So we need to JAR files, dtfj.jar and dtfj.j9-head.jar. dtfj is Diagnostic Tool Framework for Java which is provided by IBM. But where can I download these JAR files? I can't find them in IBM website or maven repository.