在启动时运行Google Dataflow作业

时间:2017-07-27 10:38:04

标签: java google-app-engine cron google-cloud-platform google-cloud-dataflow

我们的Google Cloud Dataflow管道程序调用一些动态链接到* .so文件的库,因此要运行它我需要设置linux环境变量LD_LIBRARY_PATH。有一个黑客可以做到这一点:https://groups.google.com/forum/#!topic/comp.lang.java.programmer/LOu18-OWAVM,但我想知道有没有办法使用一些在执行管道之前运行shell脚本的工作呢?

1 个答案:

答案 0 :(得分:0)

您是否正在使用JNI?您可以在设置JNI代码之前在Java代码中设置环境变量吗?

您可能还想从类路径加载.so文件并将其传递到流中。是否可以以这种方式链接.so文件?

有关如何查找文件的信息,请参阅filesToStage。 https://cloud.google.com/dataflow/pipelines/specifying-exec-params

也许这些链接中的建议也可以正常工作,您可以将.so文件打包到jar中: How to bundle a native library and a JNI library inside a JAR?

https://www.adamheinrich.com/blog/2012/12/how-to-load-native-jni-library-from-jar/