我正在從互聯網下載文件(How to download and save a file from Internet using Java?),但我不希望文件在運行之前被創建。所以我的想法是:我下載文件放在一個文件new File("myJar.jar");
,現在而不是做Runtime.getRuntime().exec("java -jar myJar.jar");
< =(我需要創建文件...)我將解壓縮jar並獲取每個類的字節,並把他們進入Classloader運行程序。這是一個好方法,或者你會推薦什麼? Java: How to load Class stored as byte[] into the JVM? < =如果我從jar中加載每個類,它會運行程序嗎?Java - 從RAM運行文件對象
編輯: 這應該做的,使破解者很難獲取文件。
編輯2: 如果它不是一個罐子,而是一個.exe,它會怎麼樣?當我將jar編譯爲本地代碼,然後將其編譯爲.exe時,這是必需的,因此crackers無法將代碼從jvm中取出。
右做,什麼是自己真正要做的問題在這裏解決?爲什麼不想在運行之前創建文件? –
要製作破解者很困難,他們將不得不使用他們的內存來獲取文件。 –
但是該文件已經在Internet上可用。肯定是一個真正想要這個文件如此糟糕的破解者會從那裏得到它? –