13

「lein uberjar」を使用して、プロジェクトの実行可能な jar ファイルを作成しています。jar は正しく作成され、期待どおりに実行されます。

ソース .clj ファイルを生成された .jar に含めないことが可能かどうかを知りたいだけです。これは、配布する予定であり、ソース ファイルを公開したくないからです。

私はlein 1.7.1を使用しています

lein で不可能な場合、手動で .clj ファイルを jar から削除しただけで機能しますか? テストを行ったところ、うまくいきました。これが安全であることを確認したいからです。

前もって感謝します。

4

2 に答える 2

13

:omit-source truelein's で使用しproject.cljます。

于 2012-05-27T00:15:28.227 に答える
2

提供されている aot コンパイル手順を試してみましたか? 例については、こちらを参照してください。

また、誰かが少し前に、プロジェクト全体を aot でコンパイルすることについて何かブログを書きました: http://blog.japila.pl/2012/02/aot-compile-all-namespaces-in-a-clojure-project-aot-all-プロジェクト内-clj-leiningen/

その場合も、.clj ファイルを掘り下げて削除する必要があるかもしれませんが、わかりません。たぶん、これはどこかから始めることです。

編集 1

コンパイルを使用して.classファイルを配布する場合でも、ユーザーが読めるようにそれらのクラスを逆コンパイルするための非常に優れたツールがあることに注意してください(ドキュメントが非常に貧弱だった過去にこれを使用しましたそれがどのように機能するかを確認するには、他の場所を探す必要がありました)。

そのような場合は、独自のコード難読化ツールを実装する方法を見つけたほうがよいでしょう。ただし、そのトピックについてはほとんどまたはまったく知りませんが、ここから始めましょう

于 2012-05-25T18:31:52.510 に答える