Java 用于创建数组并存储值和co的批处理脚本

Java 用于创建数组并存储值和co的批处理脚本,java,windows,batch-file,java-home,Java,Windows,Batch File,Java Home,您好,我需要一个批处理脚本,它想要创建一个数组来存储一个值列表1.6_445,1.6_555,1.6_745,1.7。然后它需要从系统中回显java vesion,java vesion的值需要将这些值与数组中的值进行比较。如果该值大于1.6_445,则需要显示一条错误消息“不工作” 获取系统的java版本,如果java vesion值大于1.6_445,则需要显示错误 可能吗 目前我正在使用下面的脚本 @回音 setlocal enableextensions disabledelayedex

您好,我需要一个批处理脚本,它想要创建一个数组来存储一个值列表1.6_445,1.6_555,1.6_745,1.7。然后它需要从系统中回显java vesion,java vesion的值需要将这些值与数组中的值进行比较。如果该值大于1.6_445,则需要显示一条错误消息“不工作” 获取系统的java版本,如果java vesion值大于1.6_445,则需要显示错误

可能吗

目前我正在使用下面的脚本

@回音 setlocal enableextensions disabledelayedexpansion ::JavaSoft注册表数据的HKLM\软件下的可能位置 设置javaNativeVersion= 设置java32ON64=Wow6432Node\

:: for variables
::    %%k = HKLM\SOFTWARE subkeys where to search for JavaSoft key
::    %%j = full path of "Java Runtime Environment" key under %%k
::    %%v = current java version
::    %%e = path to java

set "javaDir="
set "javaVersion="
for %%k in ( "%javaNativeVersion%" "%java32ON64%") do if not defined javaDir (
    for %%j in (
        "HKLM\SOFTWARE\%%~kJavaSoft\Java Runtime Environment"
    ) do for /f "tokens=3" %%v in (
        'reg query "%%~j" /v "CurrentVersion" 2^>nul ^| find /i "CurrentVersion"'
    ) do for /f "tokens=2,*" %%d in (
        'reg query "%%~j\%%v" /v "JavaHome"   2^>nul ^| find /i "JavaHome"'
    ) do ( set "javaDir=%%~e" & set "javaVersion=%%v" )
)
if not defined javaDir (
echo Java not found
否则 echo JAVA_HOME=%javaDir% echo JAVA\u版本=%javaVersion% 如果%javaVersion%LSS 1.7 echo Java版本兼容! 转到出口


但是这个脚本只是检查java版本是否大于1.7,但是我想检查java版本是否大于1.6_445,因为它包含一个“_”字符,它需要一些其他方法。因此,一种可能的方法是将值存储在数组中,并比较当前版本值。我想,但我不知道如何编写代码。

可能重复是的,可能!问一个更好的问题,并证明自己尝试过某件事,否则答案不会太有帮助。你现在的问题还不清楚-输出应该是什么样子?@Kokkie:不,两者都是DavidPostill的不同副本:仅在某些部分使用相同的概念