Weblogic 12c - 启动管理服务器抛出语法错误

Weblogic12 - start Admin Server throws syntax error

我对 Weblogic12 有一个大问题。我尝试 运行 管理服务器,命令行就消失了,没有任何信息。所以我正在更深入地调试它,shortenPaths.cmd 文件中有一个问题,看起来像:

@rem **************************************************************************
@rem This script is used to shorten CLASSPATH and PATH environmental variables.
@rem 
@rem Copyright (c) 2011, 2016, Oracle and/or its affiliates. All rights reserved. 
@rem **************************************************************************
if NOT "%CLASSPATH%"=="" (
  call :handle_classpath
)

if NOT "%PATH%"=="" (
  call :handle_path
)
goto :EOF

:handle_classpath
pause
  set __SHORT_CLASSPATH__=
  call :process_classpath "%CLASSPATH%"
  set CLASSPATH=%__SHORT_CLASSPATH__%
  goto :EOF

:handle_path
  set __SHORT_PATH__=
  call :process_path "%PATH%"
  set PATH=%__SHORT_PATH__%
  goto :EOF

:process_classpath
  FOR /F "TOKENS=1,* DELIMS=;" %%a IN (%1) DO (
    if NOT "%%a"=="" (
      if exist "%%a" (
        call :add_to_classpath %%~fsa
      )
    )
    if NOT "%%b"=="" (
      call :process_classpath "%%b"
    )
  )
  goto :EOF

:add_to_classpath
  if NOT "%1"=="" (
    if NOT "%__SHORT_CLASSPATH__%"=="" (
      set __SHORT_CLASSPATH__=%__SHORT_CLASSPATH__%;%1
    ) else (
      set __SHORT_CLASSPATH__=%1
    )
  )
  goto :EOF

:process_path
  FOR /F "TOKENS=1,* DELIMS=;" %%a IN (%1) DO (
    if NOT "%%a"=="" (
      if exist "%%a" (
        call :add_to_path %%~fsa
      )
    )
    if NOT "%%b"=="" (
      call :process_path "%%b"
    )
  )
  goto :EOF

:add_to_path
  if NOT "%1"=="" (
    if NOT "%__SHORT_PATH__%"=="" (
      set __SHORT_PATH__=%__SHORT_PATH__%;%1
    ) else (
      set __SHORT_PATH__=%1
    ) 
  )

命令行抛出此错误:

if NOT "" == "" (call :handle_classpath )
The syntax of the command is incorrect.

所以我尝试在我自己的脚本中模拟相同的 if 语句:

set CLASSPATH=""

if NOT "%CLASSPATH%"=="" (
  echo "inside"
)
pause

结果是:

C:\Tools\Weblogic12\oracle_common\common\bin>if NOT """" == "" (echo "inside" )
"inside"

C:\Tools\Weblogic12\oracle_common\common\bin>pause
Press any key to continue . . .

我不知道这个 Weblogic 是怎么回事。我什么也没做,只是尝试测试我的应用程序,但我无法启动它。两天前它工作正常,没有任何问题。反映最深的就是为什么Weblogic脚本中的命令行抛出错误而我自己的同样情况却没问题。

我找到了解决方案。 Path 环境变量有问题。当我使用 GUI 检查它时,当我在控制台中打印它时,存在差异。在控制台系统中添加指向 microsoft .net 框架的路径,该框架在末尾包含引号,这会导致问题。最重要的是,当我使用 GUI 将某些内容添加到 Path 并将其删除时,不再有指向 microsoft .net 的奇怪路径并且它开始正常工作...