gpt4 book ai didi

java - 创建一个只运行一次的java应用程序

转载 作者:太空宇宙 更新时间:2023-11-04 07:43:59 25 4
gpt4 key购买 nike

我必须使用满足以下功能的 java 应用程序创建一个 jar:

  • jar 中打包有 xml 数据,第一次启动应用程序时会读取这些数据。每次连续启动应用程序时,都会从动态创建的二进制文件加载数据。
  • 客户不应该能够将应用程序重置为其主要状态(例如,如果二进制文件由于某种原因被删除,应用程序应该无法再次运行并给出错误消息)。
  • 所有这些都不应该依赖于它运行的操作系统(这意味着例如在 Windows 中设置注册表项无法完成这项工作)

总结,我希望防止重置曾经启动的应用程序,以限制应用程序的非法重用。

现在谈谈我对如何实现这一目标的想法:

  • 在第一次运行时从 jar 中删除 xml(到目前为止,我了解到不可能让应用程序编辑它自己的 jar。这是真的吗?)
  • 在第一次运行时永久设置 jar 中的变量/属性/设置/任何内容(是否可能)

关于如何实现这一目标有什么建议/想法吗?

更新:

我没有找到针对这个确切问题的解决方案,但我找到了一个简单的解决方法:与我的软件一起发布了一个特定的文件,该文件在程序第一次启动后会发生更改。当然,如果有人保留原始文件的副本,他可以随时替换它并重新开始。

最佳答案

任何能够删除二进制文件的用户,只要有足够的时间,也能够恢复在 jar 中所做的任何更改。当应用程序的唯一现有部分掌握在用户手中时,您将无法阻止对其进行更改。

您可以轻松地存储原始 jar 的备份、制作副本、将其用于一次运行、删除、复制原始 jar 等。您将需要用户计算机外部的某种机制,例如激活服务器。用户获得一个代码来激活帐户,并且无法再次使用该代码。

关于java - 创建一个只运行一次的java应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15619875/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com