4

目標: エンド ユーザーが Java で [ゲーム内の宇宙船の艦隊を制御するための] AI オブジェクトを作成する jython スクリプトを記述できるようにする。

ユーザーが AI のすべてのロジックを .py ファイルに記述し、そのコードを Java オブジェクトに変換できるようにしたいと考えています。Java リフレクションを使用せず、必要なたびにインタープリターを介してユーザーのコードを実行せずにこれを行いたいと考えています。AIロジックはすべてのゲームループを実行する必要があるため、コードをできるだけ速く実行することが重要です。

Jython の__toJava__メソッドを見たことがありますが、それを使用する方法や必要なものかどうかはよくわかりません。

私の問題に対する適切な解決策、または に関する知識についての洞察をいただければ幸い__toJava__です。私はJavaとJythonの両方に取り組んでいるので、代替案を提案することは生産的ではありません:)

4

3 に答える 3

1

Jythonc は非推奨ですが、とにかく jythonc を使用した古いバージョンを次に示します。次のようにコンパイルします。

jythonc --core --jar foo.jar foo.py

別の(テストされていない)解決策は、クラスをfoo.pyとして保存し、同じフォルダーでjythonシェルを開いて入力することです

import foo

これにより、そのフォルダーに foo$py.class が自動的に作成されます。

Jython は優れた言語ですが、優れたパッケージング ツールがないため、 Leiningenとの Java 相互運用のために簡単にパッケージ化できるClojureを選びました。また、AI を作成する予定なので、lisp を使用することは悪い考えではないかもしれません。

于 2013-01-11T21:10:47.977 に答える
1

Java アプリケーションから jython コードを使用するこれらの方法を確認する必要があります。

コードを jython で記述し、Java アプリケーションでそのまま使用する必要があります。

于 2013-01-08T10:13:10.763 に答える