У меня есть приложение scala, которое я создаю с помощью sbt.Тянет в родную библиотеку.Нативная библиотека загружается через ...
System.setProperty("java.library.path", "libs")
System.loadLibrary("native-library")
Приложение работает абсолютно нормально как в Ubuntu 14, так и в 16. Я могу выполнить тест sbt и запустить без проблем, и все отлично соединяется.
Я тестирую сборку на Ubuntu 18 и сталкиваюсь с проблемами.Похоже, они специально связаны с загрузкой / связыванием нативной библиотеки.Приложение работает нормально, если я использую "sbt run".Однако, если я попробую «sbt test», произойдет сбой со следующей ошибкой ...
sbt.ForkMain$ForkError: java.lang.NoClassDefFoundError: Could not initialize class "MyClass"
, где «MyClass» - это класс, который связывает собственную библиотеку.Приложение также хорошо компилируется (sbt compile), и я включил "fork: = true" в свой build.sbt.
Так что я знаю, что он "работает" в некоторых сценариях.Кажется, в «sbt test» есть что-то конкретное, где оно ломается.
Спасибо!