Назначение пакета Java классу JRuby - PullRequest
4 голосов
/ 19 января 2011

(Это не домашнее задание, так как оно выходит за рамки класса только для моего личного интереса.)

В моем семестре на этом семестре наш инструктор дает нам скомпилированные тесты JUnit, которые нашзавершенные лаборатории должны пройти.Например, наша первая лабораторная работа состояла в том, чтобы разработать этот класс:

package java112.labs1;

public class MysteryClassOne {

    public int mysteryMethodOne() {
        return 1;
    }
}

Это очень тривиальный Java-код, и чтобы мне было немного сложнее, поскольку у меня был предыдущий опыт работы с Java, я бы хотелсделать все назначения в JRuby, после выполнения их в Java.Моя единственная проблема заключается в том, что все скомпилированные тесты находятся в пакете java112.labsX, и я не могу найти справки о том, как назначить класс JRuby для пакета Java.

Вот оно, в моем типичном длинномwinded fashion.

РЕДАКТИРОВАТЬ

Спасибо огромное за решение этой проблемы.Вот код на JRuby, если кому-то интересно:

require 'java'
java_package 'java112.labs1'

class MysteryClassOne
  java_signature 'int mysteryMethodOne()'
  def mysteryMethodOne
    return 1
  end
end

1 Ответ

3 голосов
/ 21 января 2011

Возможно, вас интересует что-то вроде этого:

https://gist.github.com/789131

В этой сущности показано использование режима компиляции "javac" JRuby для создания реальных классов Java.Вы можете указать пакеты, интерфейсы для реализации, подписи и т. Д.

...