2016-05-12 8 views
0

私は私のJAVA_HOME環境変数がJDK 1.8のパスにWindowsのシステム環境の点で定義されているWindowsの10でTomcat8.exeがWindows環境変数に設定されたJAVA_HOMEとは異なるJAVA_HOMEで始まるのはなぜですか?

をTomcat8.exeでこの奇妙な状況がある:\プログラムファイル:私は」Cを実行すると

JAVA_HOME=C:\Program Files\Java\jdk1.8.0_65 

Javaのホーム:\ Apache Software Foundationの\ Tomcatの8.0 \ binに\ Tomcat8.exeは "

12-May-2016 08:57:28.250 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Server version:  Apache Tomcat/8.0.30 
12-May-2016 08:57:28.253 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Server built:   Dec 1 2015 22:30:46 UTC 
12-May-2016 08:57:28.254 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Server number:   8.0.30.0 
12-May-2016 08:57:28.254 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log OS Name:    Windows 8 
12-May-2016 08:57:28.255 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log OS Version:   6.2 
12-May-2016 08:57:28.255 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Architecture:   amd64 
12-May-2016 08:57:28.255 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Java Home:    C:\Program Files\Java\jdk1.7.0_79\jre 
12-May-2016 08:57:28.256 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log JVM Version:   1.7.0_79-b15 
12-May-2016 08:57:28.256 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log JVM Vendor:   Oracle Corporation 
12-May-2016 08:57:28.256 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log CATALINA_BASE:   C:\Program Files\Apache Software Foundation\Tomcat 8.0 
12-May-2016 08:57:28.257 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log CATALINA_HOME:   C:\Program Files\Apache Software Foundation\Tomcat 8.0 
12-May-2016 08:57:28.257 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Dcatalina.home=C:\Program Files\Apache Software Foundation\Tomcat 8.0 
12-May-2016 08:57:28.258 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Dcatalina.base=C:\Program Files\Apache Software Foundation\Tomcat 8.0 
12-May-2016 08:57:28.259 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djava.endorsed.dirs=C:\Program Files\Apache Software Foundation\Tomcat 8.0\endorsed 
12-May-2016 08:57:28.261 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djava.io.tmpdir=C:\Program Files\Apache Software Foundation\Tomcat 8.0\temp 
12-May-2016 08:57:28.261 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager 
12-May-2016 08:57:28.262 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djava.util.logging.config.file=C:\Program Files\Apache Software Foundation\Tomcat 8.0\conf\logging.properties 
12-May-2016 08:57:28.264 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: exit 
12-May-2016 08:57:28.265 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Xms128m 
12-May-2016 08:57:28.266 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Xmx256m 
12-May-2016 08:57:28.267 INFO [main] org.apache.catalina.core.AprLifecycleListener.lifecycleEvent The APR based Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: C:\Program Files\Apache Software Foundation\Tomcat 8.0\bin;C:\WINDOWS\Sun\Java\bin;C:\WINDOWS\system32;C:\WINDOWS;C:\ProgramData\Oracle\Java\javapath;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\WINDOWS\System32\WindowsPowerShell\v1.0\;C:\Program Files\Java\jdk1.8.0_65\bin;. 

私はのソースを理解していない私はcatalina.logで見ることができるように、サーバーは、別のJDKで始まります": C:¥Program Files¥Java¥jdk1.7.0_79¥jre」を選択します。

私はすべてのTomcatのファイルとサブフォルダにある「1.7」のファイル検索で検索を試してみました、唯一のoccourenceがログに表示されます...

リンク先は「C:\ Program Filesです\ ApacheのSoftware Foundation \ Tomcat 8.0 \ bin \ Tomcat8.exe "には、他の変数はありません。

さらに、JDK 1.7はシステムパスにありません!

JDK 1.8を強制するにはどうすればよいですか?

ありがとうございます。

EDIT

これは、プロンプトでsetコマンドの印刷です:

C:\Program Files\Apache Software Foundation\Tomcat 8.0\bin>set 
ALLUSERSPROFILE=C:\ProgramData 
APPDATA=C:\Users\Alessandro\AppData\Roaming 
CommonProgramFiles=C:\Program Files\Common Files 
CommonProgramFiles(x86)=C:\Program Files (x86)\Common Files 
CommonProgramW6432=C:\Program Files\Common Files 
COMPUTERNAME=ASUS-B551L-09 
ComSpec=C:\WINDOWS\system32\cmd.exe 
configsetroot=C:\WINDOWS\ConfigSetRoot 
DOCKER_TOOLBOX_INSTALL_PATH=C:\Program Files\Docker Toolbox 
FPS_BROWSER_APP_PROFILE_STRING=Internet Explorer 
FPS_BROWSER_USER_PROFILE_STRING=Default 
FP_NO_HOST_CHECK=NO 
HOMEDRIVE=C: 
HOMEPATH=\Users\Alessandro 
JAVA_HOME=C:\Program Files\Java\jdk1.8.0_65 
LOCALAPPDATA=C:\Users\Alessandro\AppData\Local 
LOGONSERVER=\\ASUS-B551L-09 
NUMBER_OF_PROCESSORS=4 
OS=Windows_NT 
Path=C:\ProgramData\Oracle\Java\javapath;C:\Program Files (x86)\Intel\iCLS Client\;C:\Program Files\Intel\iCLS Client\;C:\Program Files (x86)\NVIDIA Corporation\PhysX\Common;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\WINDOWS\System32\WindowsPowerShell\v1.0\;C:\Program Files\Intel\Intel(R) Management Engine Components\DAL;C:\Program Files\Intel\Intel(R) Management Engine Components\IPT;C:\Program Files (x86)\Intel\Intel(R) Management Engine Components\DAL;C:\Program Files (x86)\Intel\Intel(R) Management Engine Components\IPT;C:\Program Files (x86)\GTK2-Runtime\bin;C:\Program Files\TortoiseSVN\bin;C:\Program Files\Java\jdk1.8.0_65\bin;C:\Program Files\Git;C:\Program Files\7-Zip;C:\Program Files\nodejs\;C:\Program Files\Docker Toolbox;C:\Users\Alessandro\AppData\Roaming\npm 
PATHEXT=.COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH;.MSC 
PROCESSOR_ARCHITECTURE=AMD64 
PROCESSOR_IDENTIFIER=Intel64 Family 6 Model 69 Stepping 1, GenuineIntel 
PROCESSOR_LEVEL=6 
PROCESSOR_REVISION=4501 
ProgramData=C:\ProgramData 
ProgramFiles=C:\Program Files 
ProgramFiles(x86)=C:\Program Files (x86) 
ProgramW6432=C:\Program Files 
PROMPT=$P$G 
PSModulePath=C:\WINDOWS\system32\WindowsPowerShell\v1.0\Modules\ 
PUBLIC=C:\Users\Public 
SESSIONNAME=Console 
SystemDrive=C: 
SystemRoot=C:\WINDOWS 
TEMP=C:\Users\Alessandro\AppData\Local\Temp 
TMP=C:\Users\Alessandro\AppData\Local\Temp 
USERDOMAIN=ASUS-B551L-09 
USERDOMAIN_ROAMINGPROFILE=ASUS-B551L-09 
USERNAME=Alessandro 
USERPROFILE=C:\Users\Alessandro 
VBOX_MSI_INSTALL_PATH=C:\Program Files\Oracle\VirtualBox\ 
windir=C:\WINDOWS 
+1

環境変数は、Tomcatの起動に使用するプロセスから継承されます。このプロセスがJAVA_HOMEの変更前に開始されていても、古い値が残っている可能性があり、したがってtomcatは古い値を継承します。ログオフしてもう一度オンにするか、システムを再起動してください。 – Robert

+0

すでに何度もやりましたが、私は昨日問題を気付きました。今朝は再起動しましたが、問題はまだ残っています。 –

+0

'cmd'を起動し、' set'を実行して、ここに投稿してください。おそらく、この動作に影響を与える他のシステム変数があります。ちょうど推測。 –

答えて

1

Jacek Czのおかげで、私は解決策を見つけました。

これはから起動することができ、パネルに表示のTomcatの設定であった:

「Windowsのアイコン/すべてのアプリ/ Apache Tomcatの8 /設定」タブのJavaに行く

あったが、 JDK 1.7を設定しました。 この変数を変更すると、Tomcatは正しいJDKで起動します。

Apache Tomcat 8.0 Tomcat8 Properties

+0

これが解決策であれば、この回答に同意する必要があります。 –

+0

私は2日後にしか受け入れることができません –

1

私はJAVA_HOME変数は、Tomcatが上書きなっていると思います。

startup.batファイルとcatalina.batファイルを調べてJAVA_HOME変数が定義されているかどうかを確認してください。

tomcat binフォルダのファイルを確認してください。

+0

catalina.batにset JAVA_HOME = "C:¥Program Files¥Java¥jdk1.8.0_65¥bin"を追加しようとしましたが、機能しませんでした。 startup.batにJAVA_HOMEのoccourencesはありません –

+0

この投稿を確認してください:http://stackoverflow.com/questions/5492937/windows-ignores-java-home-how-to-set-jdk-as-default – shankarsh15

+0

それは依存していますWindowsのレジストリに?しかし、どの鍵を調べるべきですか? –

1

(通常のWindowsインストールで)Windowsサービスとして起動すると、TomcatはJavaタブからJVMパスを取得します。これはsystray/configureから表示されます。

TomcatのすべてのJavaパスは、このメインパスによって異なります。

Javaのアップグレード後、管理者が変更するまで、Tomcatは古いJVMをチェックして実行できます。

+0

mmm ...もう少し詳しく説明できますか?ありがとう。 –

+0

systray/configureを見るにはどうしたらいいですか? –

+0

Systrayは、通常は右下にアイコンのある領域です。 Apache/Tomcatを探します。私はあなたを理解しているかわからない –

関連する問題