我想检查环境中是否存在JAVA_HOME,因此我编写了以下脚本a.bat
if "%JAVA_HOME%" == ""
(
echo Enter path to JAVA_HOME:
set /p javahome=
)
if not "%JAVA_HOME%" == ""
(
echo %JAVA_HOME%
)
它显示“命令的语法不正确”,我哪里错了?
我需要安装java并设置Java路径。我可以安装java,并且可以在C:\Program Files (x86)\Java中看到两个文件夹,即Jre和Jdk。
但是,当我试图在我的代码中设置回显,但我不能在命令中设置它的路径时,请使用propmt echo命令,即@ JAVA_PATH JAVA_HOME = %JAVA_HOME%。虽然我今天已经开始编写脚本了,但是我不能纠正我遗漏了什么?
这是我尝试过的代码:
@echo off
for /f %%j in ("java.exe") do (
set JAVA_HOME=%%~dp$PATH:j
我对shell脚本非常陌生。我想检查以下几点:
用户是否为su。
如果是su,那么systemctl命令是否存在
如果已安装,则是否安装java。
如果已安装,则版本为1.8或更多
如果更多的话,那么它是否是Oracle Java
如果Oracle Java然后运行jar
我做了以下工作:
#!/bin/bash
if ! [ $(id -u) = 0 ]; then
echo "User not logged in as Root!"
exit 1
fi
if command -v systemctl; then
echo
我能够在命令提示符上获得PATH和JAVA_HOME。但当我看到环境变量时,我看不到这些变量设置在控制面板\系统和安全\系统\高级系统属性\变量.我认为代码不会永久地设置它们。如果我第二次双击批处理文件,它显示的消息是"java.exe未找到“。
我不知道哪里遗漏或写错了代码?--我正在使用Windows7
密码试过:-
@echo off
SET JAVA_HOME=
for /f %%j in ("java.exe") do set JAVA_HOME=%%~dp$PATH:j
IF DEFINED JAVA_HOME GOTO :JAVA_FOUN
我已经安装了Java 11并将系统变量设置为:
JAVA_HOME
C:\Program Files\AdoptOpenJDK\jdk-11.0.5.10-hotspot
以及通往
C:\Program Files\AdoptOpenJDK\jdk-11.0.5.10-hotspot\bin
当我尝试使用service.bat将tomcat作为服务安装时,我得到了以下错误:
The JAVA_HOME environment variable is not defined correctly
This environment variable is needed to run this pro
为什么这段代码不起作用?
@echo off
set /p param=Enter Parameters:
echo %param%
输出:
(Nothing)
我搜索了所有相关的帖子,但我找不到它的问题所在。没有空格问题,也没有语法问题,我可以识别。
更新:如rojo所述,由于代码块正在工作,下面是完整的代码,它不起作用。
@echo off
for /f %%j in ("java.exe") do (
set JAVA_HOME=%%~dp$PATH:j
)
if %JAVA_HOME%.==. (
echo java.exe not found
)
我正在尝试安装jboss 7.1.1.Final。首先,我重申我不能访问JBoss的管理页面。然后,我尝试从命令提示符中添加用户和密码,我看到了以下消息:
没有设置JAVA_HOME。可能会出现意想不到的结果。将JAVA_HOME设置为本地JDK的目录以避免此消息。
当我搜索这个问题时,我已经明白我必须在java_home中设置run.bat。但是我的run.bat内容是不同的:
#!/bin/sh
# Placeholder for people used to run.sh from older version redirecting them to read the readme
我有一个test.bat文件,我需要在其中编写一个脚本来检查java的PATH变量是否已经安装?
Conditions :-
1) If yes then
a) Check for the java version .
b) Check for JAVA_HOME env variable :-
i) if no , create it.
ii) if yes , get the JAVA_HOME value.
2) If No then
set JAVA_HOME to local path (em
我写了一些脚本,并有意外的文件结尾
echo off
if [$JAVA_HOME = ""]; then goto no_java_home fi
if [$SRV_HOME = ""]; then goto no_srv_home fi
echo Uses JAVA_HOME=$JAVA_HOME
echo Uses SRV_HOME=$SRV_HOME
export ACP=""
export ACP=$ACP;$JAVA_HOME/lib/tools.jar
export ACP=$ACP;$SRV_HOME/ant/lib/ant.j
请有人找出我的shell脚本中的问题所在,它在其他Linux系统上运行良好,但下面的Sunos是我的输出。
drifter% cat run.sh
#!/bin/sh -x
if [ ! $JAVA_HOME ] || [ $JAVA_HOME == "" ]
then
echo Enter path to JAVA HOME:
read JAVA_HOME
fi
if [ ! -f $JAVA_HOME/bin/java ]
then
echo "JAVA_HOME variable does not point to a valid java in
当我尝试启动wildfly服务器时,我一直收到这个愚蠢的错误:
如何修复它?我用谷歌搜索了大约2个小时,也没有找到任何解决方案。我的JAVA_HOME设置为C:\Apps\Java\jdk1.7.0_51,我尝试将其更改为jre文件夹,但同样的错误。我在PATH中也有jdk\bin文件夹。
请帮帮我。
编辑:这里是批处理脚本的代码。我没有碰它,它是和野蝇一起来的:
@echo off
rem -------------------------------------------------------------------------
rem JBoss Bootstrap Scr
我是一个MR工具管理员,我需要一个批处理脚本来满足以下要求
它必须检查Java是否在Computer > properties (right click) > Advanced system settings > Advanced > Environment Variables中设置。
如果Java可用,则需要显示"Java home is available" needs "Java home is not available"。
它必须使用java版本检查,如果它大于1.6.495,则必须显示"Java ver
我正在编写一个外壳脚本来读取包含key=value对的文件,并将这些变量设置为环境变量。我尝试使用下面的代码,
if EXIST "test.dat" (
for /F "tokens=*" %%I in (test.dat) do @set %%I
echo setting JAVA_HOME to :: %JAVA_HOME%
echo setting JAVA to %JAVA%
)
假设test.dat有JAVA_HOME=c:\JDK1.6,并且运行上述代码的JAVA=c:\JDK1.6\bin\java没有设置这些变量,即使我
我知道这个问题已经问了很多次了,但我确实读过,我会告诉你我得到了什么。
我将列出在我的OS X Yosemite 10.10.1中执行的命令
java -version
java version "1.8.0_45"
Java(TM) SE Runtime Environment (build 1.8.0_45-b14)
Java HotSpot(TM) 64-Bit Server VM (build 25.45-b02, mixed mode)
java -fullversion
java full version "1.8.0_45-b14"
哪个java
我正在尝试编写一个启动java应用程序的批处理文件。如果用户的计算机上没有安装Java,则应用程序将使用提供的java版本启动,具体取决于操作系统。
问题是语句的IF和ELSE部分都会被执行,就好像该语句不存在一样。
IF DEFINED %JAVA_HOME%(
Echo staring with installed java version
) ELSE (
REM check if computer is running 32 or 64 bit
REM code from http://support.microsoft.com/kb/556009/en-us
Set RegQr
我正确地设置了JAVA_HOME,当我echo它时,我看到了正确的值:
$ echo $JAVA_HOME
/usr/lib/jvm/java-6-openjdk-amd64/
我还将hadoop-env.sh.的JAVA_HOME值
$ grep JAVA_HOME conf/hadoop-env.sh
# The only required environment variable is JAVA_HOME. All others are
# set JAVA_HOME in this file, so that it is correctly defined on
export JA
当我尝试执行mvn clean install时,收到以下消息:
The JAVA_HOME environment variable is not defined correctly
This environment variable is needed to run this program
NB: JAVA_HOME should point to a JDK not a JRE
但是当我执行echo $JAVA_HOME时,我得到了以下输出:/usr/java/openjdk/jdk-16
这意味着JAVA_HOME指向了一个JDK。我不明白这个错误。
我的$PATH变量也包含jdk:
我想检查是否设置了JAVA_HOME,以及它是否比Java10更早。如何正确地检查它?我必须把这张支票放在这个if语句里面。此脚本不检测JAVA版本。
set EXPECTED_JAVA_VERSION=10
if not defined "%JAVA_HOME%" (
for /f "tokens=3" %%g in ('java -version 2^>^&1 ^| findstr /i "version"') do (
set JAVAVER=%%g
)
set JAV
我们有一个Hadoop集群2.3,其中JAVA_HOME设置为:
(cluster etc/profile)
$ echo $JAVA_HOME = /usr/lib/jvm
运行Oozie Check会导致“一切正常”,但是当运行任何oozie命令时,我们会得到一个错误,例如:
$ oozie version
$ /usr/hdp/2.3.0.0-2557/oozie/bin/oozie.distro: line 59: /usr/lib/jvm/bin/java:
No such file or directory
这可能是因为脚本/usr/hdp/2.3.0.0-2557/oozie/