検索

ホームページ  >  に質問  >  本文

java - 怎么让tomcat使用我自定义的类加载器?

要对web项目的class文件进行混淆,请问在哪配置可以让tomcat先使用自定义的类加载器?

PHP中文网PHP中文网2830日前364

全員に返信(2)返信します

  • PHP中文网

    PHP中文网2017-04-17 17:46:59

    問題の説明はあまり明確ではありません
    しかし、クラスのロードについて簡単に説明できます
    a.ブートストラップ クラスローダー/スタートアップ クラス ローダー
    主にコア API または -Xbootclasspath オプションを担当しますjdk_home/lib ディレクトリ 指定された jar パッケージがインポートされます。
    b.Extension ClassLoader/Extension Class Loader
    は、主に jdk_home/lib/ext ディレクトリ内の jar パッケージ、または指定されたディレクトリ内の jar パッケージを担当します。 Djava.ext.dirs
    c.System ClassLoader/システム クラス ローダー
    は主に、java -classpath/-Djava.class.path.
    d が指すディレクトリにクラスと jar パッケージをインポートする役割を果たします。ユーザーカスタム ClassLoader/ユーザー定義 クラスローダー (java.lang.ClassLoader のサブクラス) を定義します
    プログラムの実行中、クラスファイルは java.lang.ClassLoader のサブクラスを通じて動的にロードされ、動的実数を反映します。 -time java

    のクラスロード特性

    返事
    0
  • 高洛峰

    高洛峰2017-04-17 17:46:59

    Tomcat は WebappClassLoader を使用してアプリをロードしますが、server.xml がこのインターフェイスを開いているのがわかりません。これを置き換える場合は、Tomcat のソース コードを変更する必要があります。

    より良い解決策があります。Java エージェントを使用してクラスを動的に置き換え、クラスを暗号化および復号化できるようにします。

    返事
    0
  • キャンセル返事