用于将 Java 加密扩展文件添加到更新的 Java 中的批处理文件

用于将 Java 加密扩展文件添加到更新的 Java 中的批处理文件

我正在尝试在 Windows 7 工作站上自动执行以下情况。

我只将 Java 用于需要将 Java 加密扩展文件放置在 \security 中的单个供应商应用程序。但是,每次 Java 更新时,都会创建一个引用 Java 内部版本号的新文件夹,并且必须将 JCE 文件再次复制到新位置。

我希望 JAVA 可以设置指向最新版本的环境变量,但它没有。它似乎所做的最多就是更新指向新版本的一些 SYMLINKS。但是,由于这些是文件链接,我认为我不能使用它们来移动 JCE 文件。

我希望创建一个脚本,从公共位置获取 JCE 文件,辨别 Java 的最新路径,并将 JCE 文件复制到适当的位置。

有什么建议么?

答案1

好的,这里有一个批处理脚本,它将找到具有最高版本构建号的 ​​Java 文件夹,然后根据您在机器上安装的 Java 的需要,将所有文件从您的阶段文件夹复制到正确的文件夹(仅具有最高版本号)。

我还在其中放入了一些 IF 逻辑,因此如果\jre\lib\security目录不存在,它就会创建它,然后执行COPY命令。

将其保存为文本文件并加上.cmd扩展名。您可能需要以管理员身份运行此文件,并且该C:\Program Files(x86)\Java文件夹可能需要管理员权限才能复制到其中。

批处理脚本示例

@ECHO ON
SETLOCAL

SET StageDir=C:\pathtojre

CD /D %programfiles(x86)%\Java

FOR /F "TOKENS=*" %%F in ('DIR /B /AD /ON java*') DO (
    SET HighestNumDir=%%F
)

SET HighNumFullDir=%programfiles(x86)%\Java\%HighestNumDir%\jre\lib\security

IF NOT EXIST "%HighNumFullDir%" MD "%HighNumFullDir%"

COPY /Y "%StageDir%\*.*" "%HighNumFullDir%"
EXIT /B
::::GOTO EOF

相关内容