我有一个Java应用程序,我想添加许可系统。我创建了一个串行密钥系统,用于在远程服务器上启动之前验证软件。
我真正希望做的是在远程服务器上托管.jar或.zip文件,并使用URL类加载器导入类。我还需要此事务是安全的,以便只有具有有效密钥的产品才能将类加载到RAM中。
我认为这可以通过PHP和服务器端的一些重写规则来实现。但是我不知道如何从Java结束处理这个问题。我以前使用URL类加载器制作了模块化系统,但是无法找到远程执行此操作的方法。
任何人都可以解释和提供示例吗?
答案 0 :(得分:0)
有多个问题
我真正希望做的是在远程服务器上托管.jar或.zip文件,并使用URL类加载器导入类
那是完全可能的,看看this answer,只是粘贴了许多答案中的一个
File file = ...
URL url = file.toURI().toURL();
URLClassLoader classLoader =
(URLClassLoader)ClassLoader.getSystemClassLoader();
Method method =
URLClassLoader.class.getDeclaredMethod("addURL",
URL.class);
method.setAccessible(true);
method.invoke(classLoader, url);
然后只使用classforname
Class.forName("ExampleClass").newInstance()
我还需要此事务是安全的,以便只有具有有效密钥的产品才能将类加载到RAM中
这取决于您使用的是哪种技术,也许更好地创建另一个特定的问题,但在通用答案中只需查找或编写身份验证系统即可,例如,如果您使用的是Spring,则可以使用Spring Security ,身份验证标准为OAUTH