Если классы исходят из директивы %import
для другого модуля SWIG, вы можете использовать %typemap("javapackage")
, например,
%typemap("javapackage") Box2D, Box2D *, Box2D & "my.core.Box2D";
Если классы являются частью текущего модуляи вы хотите поместить текущий модуль в определенный пакет, вы можете сделать это с помощью -package
при вызове SWIG, например:
swig -c++ -Wall -java -package my.core.Box2D -outdir my/core/Box2D box2d.i
Наконец, если вы хотите сделатьметоды в прокси-классе Java принимают тип Java, а не тот тип, о котором SWIG уже знает, что вы можете сделать:
%typemap(jstype) Box2D "my.core.Box2D"
, но учтите, что вам потребуется предоставить дополнительную карту типов, чтобы объяснить SWIG, как конвертироватьот типа my.core.Box2D
до типа, который ожидает генерируемый им интерфейс JNI.Это может быть с javain
картой типов или с jtype
картой типов и соответствующей jni
картой типов.