Как заставить warbler компилировать файлы ruby ​​с --javac?

Я использую warbler для создания jar из ruby-классов, чтобы его можно было запускать как интерактивное приложение. Теперь я хочу использовать этот jar в качестве библиотеки в моем java-приложении. Я заметил, что сгенерированный warbler jar содержит классы ruby, скомпилированные с использованием jrubyc без опции --javac. Итак, кто-нибудь знает, как с помощью warbler сгенерировать jar-файл, чтобы его можно было запускать как отдельное приложение, а также использовать в качестве библиотеки в проектах Java, чтобы в Java создавался объект классов ruby?

Ниже показано, как структурирован мой код ruby:

core
    |--- lib
        |----a.rb
        |----b.rb
    |---java_lib

содержание a.rb:

require 'b'
class A
    def test
        ob=b.new
        puts ob.test
    end
end

содержание b.rb:

class B
    def test
        puts "test"
    end
end

Затем я создал jar выше, используя warbler, поместил jar в classpath другого java-проекта и попытался получить доступ к a.test. Но там написано "невозможно загрузить - б"

1 ответ

Славка в настоящее время не позволяет вам пройти эту опцию. Я вижу, что вы уже открыли вопрос об этом. Кроме того, лучше всего попытаться взломать строку кода, которая вызывает jrubyc, чтобы добавить опцию и посмотреть, как все пойдет не так.

Я не запускаю проект Warbler, но я считаю, что дело не в Warbler, поэтому вы можете просто написать Rakefile (или Makefile, или POM, или что-то еще), который запускает jrubyc и создает JAR для вас,

Кроме того, ваши обновления к вопросу сосредоточены на unable to load -- b проблема, которая совершенно не связана с первоначальным вопросом, и я думаю, что я ответил на этот вопрос в другом вопросе.

Другие вопросы по тегам