GoogleCloudPlatform / healthcare-data-harmonization-dataflow

Apache License 2.0
35 stars 24 forks source link

Execution failed for task ':buildDeps' #12

Open wanjalahenry opened 3 years ago

wanjalahenry commented 3 years ago

When i try to run ./gradlew shadowJar i get the following error

./gradlew shadowJar

> Task :buildDeps FAILED
Please make sure OpenJDK 8 is installed. On Debian/Ubuntu, run: sudo apt install openjdk-8-jdk
FAILURE: Build failed with an exception.
* What went wrong:
Execution failed for task ':buildDeps'.
> Process 'command './build_deps.sh'' finished with non-zero exit value 1
* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.

* Get more help at https://help.gradle.org
BUILD FAILED in 1s
1 actionable task: 1 executed

here is my java version

openjdk 11.0.11 2021-04-20
OpenJDK Runtime Environment AdoptOpenJDK-11.0.11+9 (build 11.0.11+9)
OpenJDK 64-Bit Server VM AdoptOpenJDK-11.0.11+9 (build 11.0.11+9, mixed mode)

with --info

 ./gradlew shadowJar --info
Initialized native services in: /Users/henry.wanjala.dev/.gradle/native
Found daemon DaemonInfo{pid=55484, address=[9107a721-c178-4a87-b4a3-5340ed96519b port:53000, addresses:[/127.0.0.1]], state=Idle, lastBusy=1621524758036, context=DefaultDaemonContext[uid=d694f747-a0b2-44b0-a43b-d9b89ffd9e2a,javaHome=/usr/local/Cellar/openjdk/15.0.1/libexec/openjdk.jdk/Contents/Home,daemonRegistryDir=/Users/henry.wanjala.dev/.gradle/daemon,pid=55484,idleTimeout=10800000,priority=NORMAL,daemonOpts=--add-opens,java.base/java.util=ALL-UNNAMED,--add-opens,java.base/java.lang=ALL-UNNAMED,--add-opens,java.base/java.lang.invoke=ALL-UNNAMED,--add-opens,java.prefs/java.util.prefs=ALL-UNNAMED,-XX:MaxMetaspaceSize=256m,-XX:+HeapDumpOnOutOfMemoryError,-Xms256m,-Xmx512m,-Dfile.encoding=UTF-8,-Duser.country=CA,-Duser.language=en,-Duser.variant]} however its context does not match the desired criteria.
Java home is different.
Wanted: DefaultDaemonContext[uid=null,javaHome=/Library/Java/JavaVirtualMachines/adoptopenjdk-11.jdk/Contents/Home,daemonRegistryDir=/Users/henry.wanjala.dev/.gradle/daemon,pid=55544,idleTimeout=null,priority=NORMAL,daemonOpts=--add-opens,java.base/java.util=ALL-UNNAMED,--add-opens,java.base/java.lang=ALL-UNNAMED,--add-opens,java.base/java.lang.invoke=ALL-UNNAMED,--add-opens,java.prefs/java.util.prefs=ALL-UNNAMED,-XX:MaxMetaspaceSize=256m,-XX:+HeapDumpOnOutOfMemoryError,-Xms256m,-Xmx512m,-Dfile.encoding=UTF-8,-Duser.country=CA,-Duser.language=en,-Duser.variant]
Actual: DefaultDaemonContext[uid=d694f747-a0b2-44b0-a43b-d9b89ffd9e2a,javaHome=/usr/local/Cellar/openjdk/15.0.1/libexec/openjdk.jdk/Contents/Home,daemonRegistryDir=/Users/henry.wanjala.dev/.gradle/daemon,pid=55484,idleTimeout=10800000,priority=NORMAL,daemonOpts=--add-opens,java.base/java.util=ALL-UNNAMED,--add-opens,java.base/java.lang=ALL-UNNAMED,--add-opens,java.base/java.lang.invoke=ALL-UNNAMED,--add-opens,java.prefs/java.util.prefs=ALL-UNNAMED,-XX:MaxMetaspaceSize=256m,-XX:+HeapDumpOnOutOfMemoryError,-Xms256m,-Xmx512m,-Dfile.encoding=UTF-8,-Duser.country=CA,-Duser.language=en,-Duser.variant]

  Looking for a different daemon...
The client will now receive all logging from the daemon (pid: 55517). The daemon log file: /Users/henry.wanjala.dev/.gradle/daemon/6.7.1/daemon-55517.out.log
Starting 2nd build in daemon [uptime: 9.956 secs, performance: 99%, non-heap usage: 18% of 268.4 MB]
Using 12 worker leases.
Watching the file system is disabled
Starting Build
Settings evaluated using settings file '/Users/henry.wanjala.dev/Desktop/wanjala-core/healthcare-data-harmonization-dataflow/settings.gradle'.
Projects loaded. Root project using build file '/Users/henry.wanjala.dev/Desktop/wanjala-core/healthcare-data-harmonization-dataflow/build.gradle'.
Included projects: [root project 'converter']

> Configure project :
Evaluating root project 'converter' using build file '/Users/henry.wanjala.dev/Desktop/wanjala-core/healthcare-data-harmonization-dataflow/build.gradle'.
All projects evaluated.
Selected primary task 'shadowJar' from project :
Tasks to be executed: [task ':buildDeps', task ':compileJava', task ':processResources', task ':classes', task ':shadowJar']
Tasks that were excluded: []
:buildDeps (Thread[Execution worker for ':',5,main]) started.

> Task :buildDeps FAILED
Caching disabled for task ':buildDeps' because:
  Build cache is disabled
Task ':buildDeps' is not up-to-date because:
  Task has failed previously.
Starting process 'command './build_deps.sh''. Working directory: /Users/henry.wanjala.dev/Desktop/wanjala-core/healthcare-data-harmonization-dataflow Command: ./build_deps.sh --work_dir /Users/henry.wanjala.dev/Desktop/wanjala-core/healthcare-data-harmonization-dataflow/build/tmp/build_deps --output_dir /Users/henry.wanjala.dev/Desktop/wanjala-core/healthcare-data-harmonization-dataflow/lib
Successfully started process 'command './build_deps.sh''
Please make sure OpenJDK 8 is installed. On Debian/Ubuntu, run: sudo apt install openjdk-8-jdk
:buildDeps (Thread[Execution worker for ':',5,main]) completed. Took 0.026 secs.

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':buildDeps'.
> Process 'command './build_deps.sh'' finished with non-zero exit value 1

* Try:
Run with --stacktrace option to get the stack trace. Run with --debug option to get more log output. Run with --scan to get full insights.

* Get more help at https://help.gradle.org

BUILD FAILED in 938ms
1 actionable task: 1 executed

Thank you

msbukal commented 3 years ago

Can you try installing OpenJDK 8? (The error says sudo apt install openjdk-8-jdk).

It looks like this version is required, although it's not mentioned in the README: https://github.com/GoogleCloudPlatform/healthcare-data-harmonization-dataflow/blob/master/build_deps.sh#L41

msbukal commented 3 years ago

Probably related to https://github.com/GoogleCloudPlatform/healthcare-data-harmonization-dataflow/issues/8

wanjalahenry commented 3 years ago

even after install the correct version of java - still won't work

openjdk version "1.8.0_292"
OpenJDK Runtime Environment (AdoptOpenJDK)(build 1.8.0_292-b10)
OpenJDK 64-Bit Server VM (AdoptOpenJDK)(build 25.292-b10, mixed mode)

i removed 11 and installed 1.8 - still getting the same error

msbukal commented 3 years ago

So I'm pretty sure you're encountering the same issue as: https://github.com/GoogleCloudPlatform/healthcare-data-harmonization-dataflow/issues/8

Where do you have java installed? Does either:

JNI_DIR="/usr/lib/jvm/java-8-openjdk-amd64/include"

or

JNI_DIR_LINUX="/usr/lib/jvm/java-8-openjdk-amd64/include/linux"

exist? I'll follow up on this issue, but for now I think as a work around you can either move your java installation to this location, or you could modify build_deps.sh to point to your personal java installation.

wanjalahenry commented 3 years ago

so if i change JNI_DIR and JNI_DIR_LINUX it does compile but it fails as below

sudo ./gradlew shadowJar
Password:
Starting a Gradle Daemon, 3 incompatible Daemons could not be reused, use --status for details

> Task :buildDeps
Cloning latest mapping engine code...
Cloning into '/Users/henry.wanjala.dev/Desktop/wanjala-core/healthcare-data-harmonization-dataflow/build/tmp/build_deps'...
Building mapping engine...
go: found google.golang.org/protobuf/cmd/protoc-gen-go in google.golang.org/protobuf v1.25.0
Downloading ANTLR 4.7.1 to ./.antlr/antlr.jar
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100 2187k  100 2187k    0     0  2909k      0 --:--:-- --:--:-- --:--:-- 2909k
Entering /Users/henry.wanjala.dev/Desktop/wanjala-core/healthcare-data-harmonization-dataflow/build/tmp/build_deps/mapping_engine
Entering /Users/henry.wanjala.dev/Desktop/wanjala-core/healthcare-data-harmonization-dataflow/build/tmp/build_deps/mapping_engine/proto
Entering /Users/henry.wanjala.dev/Desktop/wanjala-core/healthcare-data-harmonization-dataflow/build/tmp/build_deps/mapping_engine/util
Entering /Users/henry.wanjala.dev/Desktop/wanjala-core/healthcare-data-harmonization-dataflow/build/tmp/build_deps/mapping_engine/main
Entering /Users/henry.wanjala.dev/Desktop/wanjala-core/healthcare-data-harmonization-dataflow/build/tmp/build_deps/mapping_engine/transform
Entering /Users/henry.wanjala.dev/Desktop/wanjala-core/healthcare-data-harmonization-dataflow/build/tmp/build_deps/mapping_engine
ok      github.com/GoogleCloudPlatform/healthcare-data-harmonization/mapping_engine/auth        (cached)
ok      github.com/GoogleCloudPlatform/healthcare-data-harmonization/mapping_engine/builtins    (cached)
ok      github.com/GoogleCloudPlatform/healthcare-data-harmonization/mapping_engine/cloudfunction       (cached)
ok      github.com/GoogleCloudPlatform/healthcare-data-harmonization/mapping_engine/errors      (cached)
ok      github.com/GoogleCloudPlatform/healthcare-data-harmonization/mapping_engine/fetch       (cached)
ok      github.com/GoogleCloudPlatform/healthcare-data-harmonization/mapping_engine/harmonization/harmonizecode (cached)
ok      github.com/GoogleCloudPlatform/healthcare-data-harmonization/mapping_engine/harmonization/harmonizeunit (cached)
?       github.com/GoogleCloudPlatform/healthcare-data-harmonization/mapping_engine/mapping     [no test files]
ok      github.com/GoogleCloudPlatform/healthcare-data-harmonization/mapping_engine/mapping_test        (cached)
ok      github.com/GoogleCloudPlatform/healthcare-data-harmonization/mapping_engine/postprocess (cached)
ok      github.com/GoogleCloudPlatform/healthcare-data-harmonization/mapping_engine/projector   (cached)
?       github.com/GoogleCloudPlatform/healthcare-data-harmonization/mapping_engine/testing/util        [no test files]
ok      github.com/GoogleCloudPlatform/healthcare-data-harmonization/mapping_engine/types       (cached)
ok      github.com/GoogleCloudPlatform/healthcare-data-harmonization/mapping_engine/types/register_all  (cached)
Entering /Users/henry.wanjala.dev/Desktop/wanjala-core/healthcare-data-harmonization-dataflow/build/tmp/build_deps/mapping_engine/proto
?       github.com/GoogleCloudPlatform/healthcare-data-harmonization/mapping_engine/proto       [no test files]
Entering /Users/henry.wanjala.dev/Desktop/wanjala-core/healthcare-data-harmonization-dataflow/build/tmp/build_deps/mapping_engine/util
ok      github.com/GoogleCloudPlatform/healthcare-data-harmonization/mapping_engine/util/gcsutil        (cached)
?       github.com/GoogleCloudPlatform/healthcare-data-harmonization/mapping_engine/util/ioutil [no test files]
ok      github.com/GoogleCloudPlatform/healthcare-data-harmonization/mapping_engine/util/jsonutil       (cached)
?       github.com/GoogleCloudPlatform/healthcare-data-harmonization/mapping_engine/util/storageclient  [no test files]
Entering /Users/henry.wanjala.dev/Desktop/wanjala-core/healthcare-data-harmonization-dataflow/build/tmp/build_deps/mapping_engine/main
?       github.com/GoogleCloudPlatform/healthcare-data-harmonization/mapping_engine/main        [no test files]
Entering /Users/henry.wanjala.dev/Desktop/wanjala-core/healthcare-data-harmonization-dataflow/build/tmp/build_deps/mapping_engine/transform
ok      github.com/GoogleCloudPlatform/healthcare-data-harmonization/mapping_engine/transform   (cached)
go: found google.golang.org/protobuf/cmd/protoc-gen-go in google.golang.org/protobuf v1.25.0
Entering /Users/henry.wanjala.dev/Desktop/wanjala-core/healthcare-data-harmonization-dataflow/build/tmp/build_deps/mapping_language/transpiler
Entering /Users/henry.wanjala.dev/Desktop/wanjala-core/healthcare-data-harmonization-dataflow/build/tmp/build_deps/mapping_language
Entering /Users/henry.wanjala.dev/Desktop/wanjala-core/healthcare-data-harmonization-dataflow/build/tmp/build_deps/mapping_language/test
Entering /Users/henry.wanjala.dev/Desktop/wanjala-core/healthcare-data-harmonization-dataflow/build/tmp/build_deps/mapping_language/transpiler
ok      github.com/GoogleCloudPlatform/healthcare-data-harmonization/mapping_language/transpiler        (cached)
Entering /Users/henry.wanjala.dev/Desktop/wanjala-core/healthcare-data-harmonization-dataflow/build/tmp/build_deps/mapping_language
?       github.com/GoogleCloudPlatform/healthcare-data-harmonization/mapping_language/errors    [no test files]
?       github.com/GoogleCloudPlatform/healthcare-data-harmonization/mapping_language/parser    [no test files]
Entering /Users/henry.wanjala.dev/Desktop/wanjala-core/healthcare-data-harmonization-dataflow/build/tmp/build_deps/mapping_language/test
ok      github.com/GoogleCloudPlatform/healthcare-data-harmonization/mapping_language/test/integration  (cached)
clang: warning: -Wl,--strip-all: 'linker' input unused [-Wunused-command-line-argument]
clib/mapping_util.c:1:10: fatal error: 'jni.h' file not found
#include <jni.h>
         ^~~~~~~
1 error generated.

> Task :buildDeps FAILED

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':buildDeps'.
> Process 'command './build_deps.sh'' finished with non-zero exit value 1

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.

* Get more help at https://help.gradle.org

BUILD FAILED in 26s
1 actionable task: 1 executed

I should mention that i'm on a MAC running big sur

here is how i changed the build_deps.sh script

readonly JNI_DIR="/Library/Java/JavaVirtualMachines/adoptopenjdk-8.jdk/Contents/Home"
readonly JNI_DIR_LINUX="/Library/Java/JavaVirtualMachines/adoptopenjdk-8.jdk/Contents/Home"

thanks!
msbukal commented 3 years ago

What version of protoc do you have installed? It looks like you have v1.25.0, you can check with protoc --version.

3.14.0 is required, and you can follow these instructions to correctly install it: https://askubuntu.com/questions/1072683/how-can-i-install-protoc-on-ubuntu-16-04/1072684#1072684

wanjalahenry commented 3 years ago

I have libprotoc 3.14.0

wanjalahenry commented 3 years ago

@msbukal i got a bit far by changing the JNI_DIR and JNI_DIR_LINUX to the following:

# At this point, we require OpenJDK 8.
readonly JNI_DIR="/Library/Java/JavaVirtualMachines/adoptopenjdk-8.jdk/Contents/Home/include"
readonly JNI_DIR_LINUX="/Library/Java/JavaVirtualMachines/adoptopenjdk-8.jdk/Contents/Home/include/darwin"

now the error is

➜  healthcare-data-harmonization-dataflow git:(master) ✗ sudo ./gradlew shadowJar --info
Initialized native services in: /private/var/root/.gradle/native
Found daemon DaemonInfo{pid=14743, address=[bb310a8f-4c03-4d6a-9c76-2f074d15837a port:57451, addresses:[/127.0.0.1]], state=Idle, lastBusy=1621530092887, context=DefaultDaemonContext[uid=e0878ee3-b79d-4f03-885f-dd97aa8dd7a5,javaHome=/Library/Java/JavaVirtualMachines/adoptopenjdk-8.jdk/Contents/Home,daemonRegistryDir=/private/var/root/.gradle/daemon,pid=14743,idleTimeout=10800000,priority=NORMAL,daemonOpts=-XX:MaxMetaspaceSize=256m,-XX:+HeapDumpOnOutOfMemoryError,-Xms256m,-Xmx512m,-Dfile.encoding=UTF-8,-Duser.country=CA,-Duser.language=en,-Duser.variant]} however its context does not match the desired criteria.
Java home is different.
Wanted: DefaultDaemonContext[uid=null,javaHome=/Library/Java/JavaVirtualMachines/jdk-11.0.11.jdk/Contents/Home,daemonRegistryDir=/private/var/root/.gradle/daemon,pid=36934,idleTimeout=null,priority=NORMAL,daemonOpts=--add-opens,java.base/java.util=ALL-UNNAMED,--add-opens,java.base/java.lang=ALL-UNNAMED,--add-opens,java.base/java.lang.invoke=ALL-UNNAMED,--add-opens,java.prefs/java.util.prefs=ALL-UNNAMED,-XX:MaxMetaspaceSize=256m,-XX:+HeapDumpOnOutOfMemoryError,-Xms256m,-Xmx512m,-Dfile.encoding=UTF-8,-Duser.country=CA,-Duser.language=en,-Duser.variant]
Actual: DefaultDaemonContext[uid=e0878ee3-b79d-4f03-885f-dd97aa8dd7a5,javaHome=/Library/Java/JavaVirtualMachines/adoptopenjdk-8.jdk/Contents/Home,daemonRegistryDir=/private/var/root/.gradle/daemon,pid=14743,idleTimeout=10800000,priority=NORMAL,daemonOpts=-XX:MaxMetaspaceSize=256m,-XX:+HeapDumpOnOutOfMemoryError,-Xms256m,-Xmx512m,-Dfile.encoding=UTF-8,-Duser.country=CA,-Duser.language=en,-Duser.variant]

  Looking for a different daemon...
Found daemon DaemonInfo{pid=56250, address=[3f634a4c-5ac8-4c21-ad15-8ffca04affaf port:53291, addresses:[/127.0.0.1]], state=Idle, lastBusy=1621525489524, context=DefaultDaemonContext[uid=7a73c7e4-64ed-48e7-aebf-9e20b89e9ff5,javaHome=/Library/Java/JavaVirtualMachines/adoptopenjdk-11.jdk/Contents/Home,daemonRegistryDir=/private/var/root/.gradle/daemon,pid=56250,idleTimeout=10800000,priority=NORMAL,daemonOpts=--add-opens,java.base/java.util=ALL-UNNAMED,--add-opens,java.base/java.lang=ALL-UNNAMED,--add-opens,java.base/java.lang.invoke=ALL-UNNAMED,--add-opens,java.prefs/java.util.prefs=ALL-UNNAMED,-XX:MaxMetaspaceSize=256m,-XX:+HeapDumpOnOutOfMemoryError,-Xms256m,-Xmx512m,-Dfile.encoding=UTF-8,-Duser.country=CA,-Duser.language=en,-Duser.variant]} however its context does not match the desired criteria.
Java home is different.
Wanted: DefaultDaemonContext[uid=null,javaHome=/Library/Java/JavaVirtualMachines/jdk-11.0.11.jdk/Contents/Home,daemonRegistryDir=/private/var/root/.gradle/daemon,pid=36934,idleTimeout=null,priority=NORMAL,daemonOpts=--add-opens,java.base/java.util=ALL-UNNAMED,--add-opens,java.base/java.lang=ALL-UNNAMED,--add-opens,java.base/java.lang.invoke=ALL-UNNAMED,--add-opens,java.prefs/java.util.prefs=ALL-UNNAMED,-XX:MaxMetaspaceSize=256m,-XX:+HeapDumpOnOutOfMemoryError,-Xms256m,-Xmx512m,-Dfile.encoding=UTF-8,-Duser.country=CA,-Duser.language=en,-Duser.variant]
Actual: DefaultDaemonContext[uid=7a73c7e4-64ed-48e7-aebf-9e20b89e9ff5,javaHome=/Library/Java/JavaVirtualMachines/adoptopenjdk-11.jdk/Contents/Home,daemonRegistryDir=/private/var/root/.gradle/daemon,pid=56250,idleTimeout=10800000,priority=NORMAL,daemonOpts=--add-opens,java.base/java.util=ALL-UNNAMED,--add-opens,java.base/java.lang=ALL-UNNAMED,--add-opens,java.base/java.lang.invoke=ALL-UNNAMED,--add-opens,java.prefs/java.util.prefs=ALL-UNNAMED,-XX:MaxMetaspaceSize=256m,-XX:+HeapDumpOnOutOfMemoryError,-Xms256m,-Xmx512m,-Dfile.encoding=UTF-8,-Duser.country=CA,-Duser.language=en,-Duser.variant]

  Looking for a different daemon...
Found daemon DaemonInfo{pid=56289, address=[5af4aea0-a2e5-408e-a7d7-51cb930fbb3b port:53298, addresses:[/127.0.0.1]], state=Idle, lastBusy=1621525460193, context=DefaultDaemonContext[uid=4d7b99c8-01a7-4bbc-bb57-9763c02bdfd1,javaHome=/usr/local/Cellar/openjdk/15.0.1/libexec/openjdk.jdk/Contents/Home,daemonRegistryDir=/private/var/root/.gradle/daemon,pid=56289,idleTimeout=10800000,priority=NORMAL,daemonOpts=--add-opens,java.base/java.util=ALL-UNNAMED,--add-opens,java.base/java.lang=ALL-UNNAMED,--add-opens,java.base/java.lang.invoke=ALL-UNNAMED,--add-opens,java.prefs/java.util.prefs=ALL-UNNAMED,-XX:MaxMetaspaceSize=256m,-XX:+HeapDumpOnOutOfMemoryError,-Xms256m,-Xmx512m,-Dfile.encoding=UTF-8,-Duser.country=CA,-Duser.language=en,-Duser.variant]} however its context does not match the desired criteria.
Java home is different.
Wanted: DefaultDaemonContext[uid=null,javaHome=/Library/Java/JavaVirtualMachines/jdk-11.0.11.jdk/Contents/Home,daemonRegistryDir=/private/var/root/.gradle/daemon,pid=36934,idleTimeout=null,priority=NORMAL,daemonOpts=--add-opens,java.base/java.util=ALL-UNNAMED,--add-opens,java.base/java.lang=ALL-UNNAMED,--add-opens,java.base/java.lang.invoke=ALL-UNNAMED,--add-opens,java.prefs/java.util.prefs=ALL-UNNAMED,-XX:MaxMetaspaceSize=256m,-XX:+HeapDumpOnOutOfMemoryError,-Xms256m,-Xmx512m,-Dfile.encoding=UTF-8,-Duser.country=CA,-Duser.language=en,-Duser.variant]
Actual: DefaultDaemonContext[uid=4d7b99c8-01a7-4bbc-bb57-9763c02bdfd1,javaHome=/usr/local/Cellar/openjdk/15.0.1/libexec/openjdk.jdk/Contents/Home,daemonRegistryDir=/private/var/root/.gradle/daemon,pid=56289,idleTimeout=10800000,priority=NORMAL,daemonOpts=--add-opens,java.base/java.util=ALL-UNNAMED,--add-opens,java.base/java.lang=ALL-UNNAMED,--add-opens,java.base/java.lang.invoke=ALL-UNNAMED,--add-opens,java.prefs/java.util.prefs=ALL-UNNAMED,-XX:MaxMetaspaceSize=256m,-XX:+HeapDumpOnOutOfMemoryError,-Xms256m,-Xmx512m,-Dfile.encoding=UTF-8,-Duser.country=CA,-Duser.language=en,-Duser.variant]

  Looking for a different daemon...
The client will now receive all logging from the daemon (pid: 21475). The daemon log file: /private/var/root/.gradle/daemon/6.7.1/daemon-21475.out.log
Starting 14th build in daemon [uptime: 44 mins 25.876 secs, performance: 100%, non-heap usage: 21% of 268.4 MB]
Using 12 worker leases.
Watching the file system is disabled
Starting Build
Settings evaluated using settings file '/Users/henry.wanjala.dev/Desktop/wanjala-core/healthcare-data-harmonization-dataflow/settings.gradle'.
Using local directory build cache for the root build (location = /private/var/root/.gradle/caches/build-cache-1, removeUnusedEntriesAfter = 7 days).
Projects loaded. Root project using build file '/Users/henry.wanjala.dev/Desktop/wanjala-core/healthcare-data-harmonization-dataflow/build.gradle'.
Included projects: [root project 'converter']

> Configure project :
Evaluating root project 'converter' using build file '/Users/henry.wanjala.dev/Desktop/wanjala-core/healthcare-data-harmonization-dataflow/build.gradle'.
All projects evaluated.
Selected primary task 'shadowJar' from project :
Tasks to be executed: [task ':buildDeps', task ':compileJava', task ':processResources', task ':classes', task ':shadowJar']
Tasks that were excluded: []
:buildDeps (Thread[Execution worker for ':',5,main]) started.

> Task :buildDeps
Caching disabled for task ':buildDeps' because:
  Caching has not been enabled for the task
Task ':buildDeps' is not up-to-date because:
  Task has failed previously.
Starting process 'command './build_deps.sh''. Working directory: /Users/henry.wanjala.dev/Desktop/wanjala-core/healthcare-data-harmonization-dataflow Command: ./build_deps.sh --work_dir /Users/henry.wanjala.dev/Desktop/wanjala-core/healthcare-data-harmonization-dataflow/build/tmp/build_deps --output_dir /Users/henry.wanjala.dev/Desktop/wanjala-core/healthcare-data-harmonization-dataflow/lib
Successfully started process 'command './build_deps.sh''
Cloning latest mapping engine code...
Cloning into '/Users/henry.wanjala.dev/Desktop/wanjala-core/healthcare-data-harmonization-dataflow/build/tmp/build_deps'...
Building mapping engine...
go: found google.golang.org/protobuf/cmd/protoc-gen-go in google.golang.org/protobuf v1.25.0
Downloading ANTLR 4.7.1 to ./.antlr/antlr.jar
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100 2187k  100 2187k    0     0  2517k      0 --:--:-- --:--:-- --:--:-- 2514k
Entering /Users/henry.wanjala.dev/Desktop/wanjala-core/healthcare-data-harmonization-dataflow/build/tmp/build_deps/mapping_engine
Entering /Users/henry.wanjala.dev/Desktop/wanjala-core/healthcare-data-harmonization-dataflow/build/tmp/build_deps/mapping_engine/proto
Entering /Users/henry.wanjala.dev/Desktop/wanjala-core/healthcare-data-harmonization-dataflow/build/tmp/build_deps/mapping_engine/util
Entering /Users/henry.wanjala.dev/Desktop/wanjala-core/healthcare-data-harmonization-dataflow/build/tmp/build_deps/mapping_engine/main
Entering /Users/henry.wanjala.dev/Desktop/wanjala-core/healthcare-data-harmonization-dataflow/build/tmp/build_deps/mapping_engine/transform
Entering /Users/henry.wanjala.dev/Desktop/wanjala-core/healthcare-data-harmonization-dataflow/build/tmp/build_deps/mapping_engine
ok      github.com/GoogleCloudPlatform/healthcare-data-harmonization/mapping_engine/auth        (cached)
ok      github.com/GoogleCloudPlatform/healthcare-data-harmonization/mapping_engine/builtins    (cached)
ok      github.com/GoogleCloudPlatform/healthcare-data-harmonization/mapping_engine/cloudfunction       (cached)
ok      github.com/GoogleCloudPlatform/healthcare-data-harmonization/mapping_engine/errors      (cached)
ok      github.com/GoogleCloudPlatform/healthcare-data-harmonization/mapping_engine/fetch       (cached)
ok      github.com/GoogleCloudPlatform/healthcare-data-harmonization/mapping_engine/harmonization/harmonizecode (cached)
ok      github.com/GoogleCloudPlatform/healthcare-data-harmonization/mapping_engine/harmonization/harmonizeunit (cached)
?       github.com/GoogleCloudPlatform/healthcare-data-harmonization/mapping_engine/mapping     [no test files]
ok      github.com/GoogleCloudPlatform/healthcare-data-harmonization/mapping_engine/mapping_test        (cached)
ok      github.com/GoogleCloudPlatform/healthcare-data-harmonization/mapping_engine/postprocess (cached)
ok      github.com/GoogleCloudPlatform/healthcare-data-harmonization/mapping_engine/projector   (cached)
?       github.com/GoogleCloudPlatform/healthcare-data-harmonization/mapping_engine/testing/util        [no test files]
ok      github.com/GoogleCloudPlatform/healthcare-data-harmonization/mapping_engine/types       (cached)
ok      github.com/GoogleCloudPlatform/healthcare-data-harmonization/mapping_engine/types/register_all  (cached)
Entering /Users/henry.wanjala.dev/Desktop/wanjala-core/healthcare-data-harmonization-dataflow/build/tmp/build_deps/mapping_engine/proto
?       github.com/GoogleCloudPlatform/healthcare-data-harmonization/mapping_engine/proto       [no test files]
Entering /Users/henry.wanjala.dev/Desktop/wanjala-core/healthcare-data-harmonization-dataflow/build/tmp/build_deps/mapping_engine/util
ok      github.com/GoogleCloudPlatform/healthcare-data-harmonization/mapping_engine/util/gcsutil        (cached)
?       github.com/GoogleCloudPlatform/healthcare-data-harmonization/mapping_engine/util/ioutil [no test files]
ok      github.com/GoogleCloudPlatform/healthcare-data-harmonization/mapping_engine/util/jsonutil       (cached)
?       github.com/GoogleCloudPlatform/healthcare-data-harmonization/mapping_engine/util/storageclient  [no test files]
Entering /Users/henry.wanjala.dev/Desktop/wanjala-core/healthcare-data-harmonization-dataflow/build/tmp/build_deps/mapping_engine/main
?       github.com/GoogleCloudPlatform/healthcare-data-harmonization/mapping_engine/main        [no test files]
Entering /Users/henry.wanjala.dev/Desktop/wanjala-core/healthcare-data-harmonization-dataflow/build/tmp/build_deps/mapping_engine/transform
ok      github.com/GoogleCloudPlatform/healthcare-data-harmonization/mapping_engine/transform   (cached)
go: found google.golang.org/protobuf/cmd/protoc-gen-go in google.golang.org/protobuf v1.25.0
Entering /Users/henry.wanjala.dev/Desktop/wanjala-core/healthcare-data-harmonization-dataflow/build/tmp/build_deps/mapping_language/transpiler
Entering /Users/henry.wanjala.dev/Desktop/wanjala-core/healthcare-data-harmonization-dataflow/build/tmp/build_deps/mapping_language
Entering /Users/henry.wanjala.dev/Desktop/wanjala-core/healthcare-data-harmonization-dataflow/build/tmp/build_deps/mapping_language/test
Entering /Users/henry.wanjala.dev/Desktop/wanjala-core/healthcare-data-harmonization-dataflow/build/tmp/build_deps/mapping_language/transpiler
ok      github.com/GoogleCloudPlatform/healthcare-data-harmonization/mapping_language/transpiler        (cached)
Entering /Users/henry.wanjala.dev/Desktop/wanjala-core/healthcare-data-harmonization-dataflow/build/tmp/build_deps/mapping_language
?       github.com/GoogleCloudPlatform/healthcare-data-harmonization/mapping_language/errors    [no test files]
?       github.com/GoogleCloudPlatform/healthcare-data-harmonization/mapping_language/parser    [no test files]
Entering /Users/henry.wanjala.dev/Desktop/wanjala-core/healthcare-data-harmonization-dataflow/build/tmp/build_deps/mapping_language/test
ok      github.com/GoogleCloudPlatform/healthcare-data-harmonization/mapping_language/test/integration  (cached)
clang: warning: -Wl,--strip-all: 'linker' input unused [-Wunused-command-line-argument]
Building wrapping...
go: creating new go.mod: module github.com/GoogleCloudPlatform/healthcare-data-harmonization/mapping_engine/wrapping
go: found google.golang.org/genproto/googleapis/api/annotations in google.golang.org/genproto v0.0.0-20200526211855-cb27e3aa2013
go: found google.golang.org/genproto/googleapis/rpc/status in google.golang.org/genproto v0.0.0-20200526211855-cb27e3aa2013
go: found google.golang.org/grpc/binarylog/grpc_binarylog_v1 in google.golang.org/grpc v1.27.1
go: found google.golang.org/protobuf/testing/protocmp in google.golang.org/protobuf v1.26.0
go: github.com/GoogleCloudPlatform/healthcare-data-harmonization/mapping_engine/proto upgrade => v0.0.0-20210513142934-e17124e34288
go: github.com/GoogleCloudPlatform/healthcare-data-harmonization/mapping_engine/transform upgrade => v0.0.0-20210513142934-e17124e34288
go: found google.golang.org/protobuf/encoding/prototext in google.golang.org/protobuf v1.26.0
# github.com/GoogleCloudPlatform/healthcare-data-harmonization/mapping_engine/wrapping
In file included from ./main.go:24:
./../clib/mapping_util.h:4:10: fatal error: 'jni.h' file not found
#include <jni.h>
         ^~~~~~~
1 error generated.

> Task :buildDeps FAILED
:buildDeps (Thread[Execution worker for ':',5,main]) completed. Took 28.902 secs.

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':buildDeps'.
> Process 'command './build_deps.sh'' finished with non-zero exit value 2

* Try:
Run with --stacktrace option to get the stack trace. Run with --debug option to get more log output. Run with --scan to get full insights.

* Get more help at https://help.gradle.org

BUILD FAILED in 29s
1 actionable task: 1 executed

it can't find

 In file included from ./main.go:24:
./../clib/mapping_util.h:4:10: fatal error: 'jni.h' file not found
#include <jni.h>
         ^~~~~~~
1 error generated.

but i checked and 'jni.h' is located at
/Library/Java/JavaVirtualMachines/adoptopenjdk-8.jdk/Contents/Home/include which i included as part of the path.

can you advise on where you use those header files? on Mac OSX instead of /include/linux it changes to /include/darwin

Thanks!

msbukal commented 3 years ago

jni.h is included here: https://github.com/GoogleCloudPlatform/healthcare-data-harmonization-dataflow/blob/master/deps/clib/mapping_util.c

Not sure why yours isn't working, it may be due to being on mac. I can look more later if you can't solve the issue.

wanjalahenry commented 3 years ago

@msbukal i suspect it's because of a mac but please let me know if you figure something out - i will keep trying! thanks again for your help!

wanjalahenry commented 3 years ago

https://stackoverflow.com/questions/7212982/jni-cannot-open-include-file-jni-md-h

wanjalahenry commented 3 years ago

@msbukal i didn't fix it on a mac, i will try and set up a VM try it on linux box!

jasonklotzer commented 3 years ago

I was receiving the same message, on linux.

I ended up having to install openjdk8 to resolve the include message, which was coming from inside of the healthcare-data-harmonization project: //#cgo CFLAGS: -I/usr/lib/jvm/java-8-openjdk-amd64/include/

It looks like the healthcare-data-harmonization-dataflow project requires openjdk11, while the healthcare-data-harmonization project requires openjdk8.

~/code/healthcare-data-harmonization-dataflow:master jklotzer@jklotzer $ apt list --installed | grep openjdk

WARNING: apt does not have a stable CLI interface. Use with caution in scripts.

openjdk-11-jdk-headless/glinux-rodete-base-20210720.01.01,now 11.0.11+9-1 amd64 [installed,automatic]
openjdk-11-jdk/glinux-rodete-base-20210720.01.01,now 11.0.11+9-1 amd64 [installed,automatic]
openjdk-11-jre-headless/glinux-rodete-base-20210720.01.01,now 11.0.11+9-1 amd64 [installed,automatic]
openjdk-11-jre/glinux-rodete-base-20210720.01.01,now 11.0.11+9-1 amd64 [installed,automatic]
openjdk-8-jdk-headless/glinux-rodete-base-20210720.01.01,now 8u232-b09-1~deb9u1 amd64 [installed,automatic]
openjdk-8-jdk/glinux-rodete-base-20210720.01.01,now 8u232-b09-1~deb9u1 amd64 [installed]
openjdk-8-jre-headless/glinux-rodete-base-20210720.01.01,now 8u232-b09-1~deb9u1 amd64 [installed,automatic]
openjdk-8-jre/glinux-rodete-base-20210720.01.01,now 8u232-b09-1~deb9u1 amd64 [installed,automatic]
vneilley commented 3 years ago

mv java-11-openjdk-amd64 java-8-openjdk-amd64 and it'll work - it requires 11, but calls 8, so I renamed my 11

nhodson commented 3 years ago

With JDK 11 I resolved the jni.h issue by creating a symlink. This was running on Debian 10.

sudo ln -s /usr/lib/jvm/java-11-openjdk-amd64/include/linux/jni_md.h /usr/lib/jvm/java-11-openjdk-amd64/include/jni_md.h