我想测试一个私有内部类中存在的私有方法
public class MyBigClass {
private class MyInnerClass {
private void wantedMethod() {
}
}
}
Run Code Online (Sandbox Code Playgroud)
我想打电话wantedMethod() 来测试它
这是我的代码
Class[] classes = MyBigClass.class.getDeclaredClasses();
for (int i = 0; i < classes.length; i++) {
// this code print "MyInnerClass"
System.out.println(">> inner classes >> " + classes[i].getSimpleName());
if (classes[i].getSimpleName().equals("MyInnerClass")) {
Class clazz = classes[i];
// Constructor c=clazz.getConstructor();
Method[] methods = clazz.getDeclaredMethods();
// this code print "wantedMethod"
for (int j = 0; j < methods.length; j++) {
System.out.println("inner class methods >> " …Run Code Online (Sandbox Code Playgroud) 我想知道是否有办法生成我的maven项目的模糊可构建版本并将其交给客户,混淆只是为了保护并使其难以窃取.
我正在使用proGuard来混淆jar,但是这个混淆是在ByteCode级别,就像它在这个线程中回答的那样Obfuscate Java源代码
如果无法进行混淆,我怎么能分发我的源代码并确保它不会被盗(或者只是通过组织不当来使其变得困难),尽管客户端应该能够构建和运行代码.
编辑:需要执行操作:
1-从源代码中删除所有注释.
2-将所有类合并到一个包中.
3-有无意义的类名:(例如A,B,C ......)
4-删除所有单元测试.