0
私は実行時にクラスをロードするためにリフレクションを使用していますが、ソナーのルールは を脆弱性の攻撃として指しています。私はByteBuddyを使用すると思いますが、これでbytebuddyライブラリが役に立ちますか?このメソッドがオーバーロードされていることをJavaでの動的クラスロードの代替手段は何ですか?
がClass<?> cls = Class.forName(className);
注:
ClassLoader classLoader = MyClass.class.getClassLoader();
Class<?> classsName = classLoader.loadClass(className);
上記の例では、動的クラスローディングだけが反映されていません。そして、2行目は意味をなさない( 'className = loadClass(className)')。 - おそらく、Sonarは安全でないソースから 'className'を取得していると不平を言っています。 Bytebuddyは助けません - あなたはまだクラスを動的にロードする必要があります。ロードされたクラスからの –
ちょうど私は1つのメソッドをパブリックにアクセス可能にしたいと思いますし、呼びたいと思います。 – Tirumalesh
methodCall.setAccessible(true); methodCall.invoke(getmethod、 "text"); – Tirumalesh