javabundled的简单介绍
本篇文章给大家谈谈javabundled,以及对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。
本文目录一览:
- 1、怎么解决 this application was configured to use a bundled java
- 2、Windows上Elasticsearch启动报警告解决方案
- 3、java那个版本可以下载啊?
- 4、怎样安装Java se 6 在Mac里
- 5、JAVA编程工具
- 6、java最高版本的jdk现在是多少
怎么解决 this application was configured to use a bundled java
怎么解决 this application was configured to use a bundled java
线程A等待线程B的数据,线程B等待线程A的数据,互相等待,就会陷入阻塞,这也是一种线程阻塞。
阻塞状态是正在运行的线程遇到某个特殊情况。例如,延迟、挂起、等待I/O操作完成等。 进入阻塞状态的线程让出CPU,并暂时停止自己的执行。线程进入阻塞状态后,就一直等待,直到引起阻塞的原因被消除,线程又转入就绪状态,重新进入就绪队列排队。
Windows上Elasticsearch启动报警告解决方案
我在自己电脑Win10上装了个Elasticsearch7.8,可能因为版本过高,导致es对jdk要求也很高,而我电脑上jdk也只是1.8版本的,然后启动的时候就报下面的警告:
Warning: with JDK 8 on Windows, Elasticsearch may be unable to derive correct
ergonomic settings due to a JDK issue (JDK-8074459). Please use a newer
version of Java.
Warning: MaxDirectMemorySize may have been miscalculated due to JDK-8074459.
Please use a newer version of Java or set MaxDirectMemorySize explicitly.
这虽然只是个警告,一般情况下访问es也不会有什么问题,但是我用多线程频繁访问的时候就会报“远程主机强迫关闭了一个连接”错误。解决方式就是在配置文件中让它用自己的jdk,而不是用我们配好的环境变量的jdk。在bin/elasticsearch-env.bat文件中将if "%JAVA_HOME%" == "" (和它后面的else整个内容注释掉(es的配置中在每行的前面加rem,我也很奇怪用这么奇怪的注释方式),然后将if中的内容提取出来就好了。下面是我的配置。
set SCRIPT=%0
rem determine Elasticsearch home; to do this, we strip from the path until we
rem find bin, and then strip bin (there is an assumption here that there is no
rem nested directory under bin also named bin)
for %%I in (%SCRIPT%) do set ES_HOME=%%~dpI
:es_home_loop
for %%I in ("%ES_HOME:~1,-1%") do set DIRNAME=%%~nxI
if not "%DIRNAME%" == "bin" (
for %%I in ("%ES_HOME%..") do set ES_HOME=%%~dpfI
goto es_home_loop
)
for %%I in ("%ES_HOME%..") do set ES_HOME=%%~dpfI
rem now set the classpath
set ES_CLASSPATH=!ES_HOME!\lib\*
set HOSTNAME=%COMPUTERNAME%
if not defined ES_PATH_CONF (
set ES_PATH_CONF=!ES_HOME!\config
)
rem now make ES_PATH_CONF absolute
for %%I in ("%ES_PATH_CONF%..") do set ES_PATH_CONF=%%~dpfI
set ES_DISTRIBUTION_FLAVOR=default
set ES_DISTRIBUTION_TYPE=zip
set ES_BUNDLED_JDK=true
cd /d "%ES_HOME%"
rem now set the path to java, pass "nojava" arg to skip setting JAVA_HOME and JAVA
if "%1" == "nojava" (
exit /b
)
rem compariing to empty string makes this equivalent to bash -v check on env var
rem and allows to effectively force use of the bundled jdk when launching ES
rem by setting JAVA_HOME=
rem if "%JAVA_HOME%" == "" (
rem set JAVA="%ES_HOME%\jdk\bin\java.exe"
rem set JAVA_HOME="%ES_HOME%\jdk"
rem set JAVA_TYPE=bundled jdk
rem ) else (
rem set JAVA="%JAVA_HOME%\bin\java.exe"
rem set JAVA_TYPE=JAVA_HOME
rem )
set JAVA="%ES_HOME%\jdk\bin\java.exe"
set JAVA_HOME="%ES_HOME%\jdk"
set JAVA_TYPE=bundled jdk
if not exist !JAVA! (
echo "could not find java in !JAVA_TYPE! at !JAVA!" 2
exit /b 1
)
rem do not let JAVA_TOOL_OPTIONS slip in (as the JVM does by default)
if defined JAVA_TOOL_OPTIONS (
echo warning: ignoring JAVA_TOOL_OPTIONS=%JAVA_TOOL_OPTIONS%
set JAVA_TOOL_OPTIONS=
)
rem JAVA_OPTS is not a built-in JVM mechanism but some people think it is so we
rem warn them that we are not observing the value of %JAVA_OPTS%
if defined JAVA_OPTS (
(echo|set /p=warning: ignoring JAVA_OPTS=%JAVA_OPTS%; )
echo pass JVM parameters via ES_JAVA_OPTS
)
rem check the Java version
%JAVA% -cp "%ES_CLASSPATH%" "org.elasticsearch.tools.java_version_checker.JavaVersionChecker" || exit /b 1
如果是linux上也报这种警告,也在类似的配置文件中作相似的修改,我还没有部署到linux上,就暂时不此问题的解决方案,需要的朋友可以自己试试。
java那个版本可以下载啊?
一:
JDK6.0下载地址:
;OrderID=4TlIBe.n0n0AAAEfwdlgS4QzProductID=ZsNIBe.pM7cAAAEexzlTv_anFileName=/jdk-6u12-windows-i586-p.exe
二:
配置(为了不出岔子您就按我的来吧,也就是安装jdk时一路next...)
在系统变量新建如下三个玩意儿(具体操作--右击我的电脑--属性--高级--环境变量--找到系统变量--新建):
[变量名N] =[变量值V]
JAVA_HOME =C:\Program Files\Java\jdk1.6.0_12
PATH =%JAVA_HOME%\bin
CLASSPATH =.;%JAVA_HOME%\lib
//当然不包括'='啦,'.;'也少不得
三:
验证(在F盘新建一个文件夹jtest,在其下面新建一个Test.java,目录为F:\jtest\Test.java,注意大小写!)
Test.java内容如下:
public class Test{
public static void main(String [] args) {
System.out.println("看到这句话就说明你jdk配置成功了,:)");
}
}
然后桌面左下角--开始--运行--cmd
一般你会看到:
Microsoft Windows XP [版本 5.1.2600]
(C) 版权所有 1985-2001 Microsoft Corp.
C:\Documents and Settings\Administrator
然后按如下操作(注意大小写!)
Microsoft Windows XP [版本 5.1.2600]
(C) 版权所有 1985-2001 Microsoft Corp.
C:\Documents and Settings\Administratorf: //输入 'f:' -----进入F盘
F:\cd jtest //输入 'cd jtest' -------进入jtest目录
F:\jtestjavac Test.java //输入 'javac Test.java'-------编译Test.java
F:\jtestjava Test //输入 'java Test'-------运行Test.class
看到这句话就说明你jdk配置成功了,:)
F:\jtest
五.结语
本教程是最基础的也是最保险的JDK配置教程,适合JAVA门外汉使用,自己以前配好了没实践验证,如有发现谬误的请指正:b
推荐资源网站:
怎样安装Java se 6 在Mac里
下载mac版专用的jdk1.7,地址如下:,里面有最新版的(不过还是测试版),版本更新频率每两周大概会release一个build,我安装的版本是b223(更新一下,最新版本是b227了,已经不是OpenJDK了)。
下好之后,双击dmg打开,然后简单的来一个拖拽(这个就不废话了,不会拽的面壁去)。
改变jvm首选顺序,在Spotlight里搜索[Java Preferences](中文版应该是JAVA首选项么?),应该能看到已经有的几个虚拟机,把JAVA SE 7拖拽到最上面,就可以了(比如我拖拽的是64位版本的)。
确认java使用的版本:开一个终端,输入java -version,确认jvm的版本号是jdk1.7.0。
下面的操作是如何改变eclipse默认的jre,首先打开eclipse(如果你改了jvm的顺序,让1.7在最上面,又没在eclipse的配置里写死jvm的启动位置,那么应该就已经用jdk1.7启动了)。
打开首选项-Java-Installed JREs,看到右侧的JRE列表,如果已经使用是默认的jdk1.6的话,点Add,选择MacOS X VM,在路径的地方指向到jdk7的安装位置,就可以了。
话没说完,如果你找不到这该死的jdk1.7的安装位置在哪里,可以考虑粘下这个地址(这个是我系统里的位置,我猜测大家的都应该差不多哈)。/Library/Java/JavaVirtualMachines/JDK 1.7.0 Developer Preview.jdk/Contents/Home
正确的话,下面会识别出一堆jar包位置,然后给这一坨jre起个帅气的名字。
如果想启用jdk1.7的语法,必须要eclipse版本在3.8/4.2以上(目前我写这篇博客的时候,4.2已经达到了Milestone4),然后可以在workspace/project属性里把编译等级调整到1.7,就能享受jdk1.7的语言特性了(不过前提是,使用的jdk以及jre必须都是jdk1.7以上才行)。
希望这篇啰嗦的文章对大家有帮助。
更新信息
支持Java7语法的eclipse版本是从3.7开始的,具体见如下地址:
Mac下Eclipse默认还是会使用系统的jdk1.6启动,好像强制修改eclipse.ini的vm参数是无效的,必须修改Eclipse.app/Content/Info.plist,打开看里面有注释写着呢。不过我这里eclipse4.2M4修改后依然无效。
有时候会出现部分应用还使用旧的jdk1.6的情况出现,例如maven有时候就会坚持用旧版的,这时候只好找个地方导出下JAVA_HOME变量了。改到jdk1.7的Home目录即可。
jdk1.7 macport从b11开始合并了分支代码,开始已经直接使用安装程序安装了,相应安装到的路径也改变了,是这个:/Library/Java/JavaVirtualMachines/1.7.0.jdk/Contents/Home 。update on 2012-2-12
jdk1.7u6 b09开始,bundle name变更,这样就可以在安装新版本的同时保留旧版本了。当然了,路径也会变化,变成了这个样子:/Library/Java/JavaVirtualMachines/jdk1.7.0_06.jdk,其中06是update版本号。简易大家可以做一个软连接,cd /Library/Java/JavaVirtualMachines;ln -s jdk1.7.0_06.jdk 1.7.0.jdk,这样就不会受到版本升级的影响了(这样eclipse里设置的JRE路径就用软连接里的路径就好了)。
JAVA编程工具
JDK 是开发工具,先从下面的链接下载。
JDK 6 update 14: ;OrderID=2zZIBe.pMBQAAAEioJsHliBZProductID=fepIBe.opBQAAAEhlx0zLjfTFileName=/jdk-6u14-windows-i586.exe
然后从下面的链接下载 JRE。JRE 中包含了运行Java程序必须的 JVM:
JRE 6 update 14: ;OrderID=MtxIBe.pwCQAAAEiHj0HliBbProductID=jwBIBe.poo4AAAEhLFUP5zfrFileName=/jre-6u14-windows-i586.exe
安装上面的两个程序。然后开始配置环境变量。从控制面板找到系统属性,高级系统设置,环境变量,在用户环境变量或者系统环境变量下面添加一项 Path,设置成 javac.exe(编译器)所在的完整路径,到 JDK/bin 就可以了。然后添加一项 ClassPath,设置成 JRE/lib 所在的路径。如果原来已经有 Path 项,就编辑那一项,在开头添加 jdk/bin 的路径名,后面再加分号隔开。
例如,你安装在 D 盘,编译器所在目录为:D:/jdk 1.6/bin,就在Path开头添加 D:/jdk 1.6/bin;;
jre/lib 所在目录为:D:/jre 1.6/lib,就在ClassPath开头添加 D:/jre 1.6/lib;。
完了以后应用保存设置。然后打开记事本,写入如下代码:
public class HelloWorld
{
public static void main (String[] args)
{
System.out.println("Hello World!");
}
}
另存为,选择 *.*所有文件,文件名为 HelloWorld.java,注意大小写,一个字不能差。然后打开 cmd,进入 HelloWorld.java 的目录,输入
javac HelloWorld.java
如果没有出现错误信息就继续输入:
java HelloWorld
如果正确显示结果 Hello World! 那就恭喜配置正确了。如果出现错误信息,回头检查以上各步存在的问题。
java最高版本的jdk现在是多少
jdk-6u12:
;OrderID=4TlIBe.n0n0AAAEfwdlgS4QzProductID=ZsNIBe.pM7cAAAEexzlTv_anFileName=/jdk-6u12-windows-i586-p.exe
关于javabundled和的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。
发布于:2022-11-24,除非注明,否则均为
原创文章,转载请注明出处。