我已经创建了一个套接字程序的 jar。当我第一次在 Windows 系统上运行此 jar 时,它会请求公共和家庭网络访问权限。如果用户授予它们权限,则它可以正常工作并接受来自公共用户的请求。但如果用户拒绝,则只有在防火墙关闭的情况下它才能工作。我希望每次用户运行我的 jar 时,它都应该请求文件网络访问权限,以便在用户第一次拒绝时,他可以在下次授予这些权限。
答案1
你不能。此行为仅取决于用户的 Windows 防火墙配置,你无法在程序中对此采取任何措施。此外,Java 不应该访问此类系统特定的详细信息。
答案2
您可以在 jar 中有一个策略文件,该策略文件包含应用程序所需的权限。要了解有关策略文件的更多信息,请查看此关联