Data Integration - Kettle 7.0在win7旗舰版 32bit下 Spoon 启动报could not create the java virtual machine的问题分析
Data Integration - Kettle 7.0在win7旗舰版 32bit下Spoon 启动报could not create the java virtual machine的问题分析
1、下载并解压好,安装号JDK并配置环境变量
Java要求安装jdk1.7版本
安装jdk,并配置java环境
a).打开我的电脑--属性--高级--环境变量
b).新建系统变量JAVA_HOME和CLASSPATH
变量名:JAVA_HOME 变量值:C:\Program Files\Java\jdk1.7.0[具体路径以自己本机安装目录为准]
变量名:CLASSPATH 变量值:.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;
c). 选择“系统变量”中变量名为“Path”的环境变量,双击该变量,把JDK安装路径中bin目录的绝对路径,
添加到Path变量的值中,并使用半角的分号和已有的路径进行分隔。
变量名:Path 变量值:%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin;
3、配置kettle环境
在系统的环境变量中添加KETTLE_HOME变量,
目录指向kettle的安装目录:D:\mysoft\kettle\pdi-ce-7.0.0.0-25\data-integration
2、双击Spoon.bat运行的时候报错
DEBUG: Using JAVA_HOME
DEBUG: _PENTAHO_JAVA_HOME=C:\Program Files (x86)\Java\jdk1.7.0_51
DEBUG: _PENTAHO_JAVA=C:\Program Files (x86)\Java\jdk1.7.0_51\bin\javaw.exe
D:\mysoft\kettle\pdi-ce-7.0.0.0-25\data-integration>start "Spoon" "C:\Program Fi
les (x86)\Java\jdk1.7.0_51\bin\javaw.exe" "-Xms1024m" "-Xmx2048m" "-XX:MaxPermSiz
e=256m" "-Dhttps.protocols=TLSv1,TLSv1.1,TLSv1.2" "-Djava.library.path=libswt\wi
n32" "-DKETTLE_HOME=D:\mysoft\kettle\pdi-ce-7.0.0.0-25\data-integration" "-DKETT
LE_REPOSITORY=" "-DKETTLE_USER=" "-DKETTLE_PASSWORD=" "-DKETTLE_PLUGIN_PACKAGES=
" "-DKETTLE_LOG_SIZE_LIMIT=" "-DKETTLE_JNDI_ROOT=" -jar launcher\pentaho-applica
tion-launcher-7.0.0.0-25.jar -lib ..\libswt\win32
D:\mysoft\kettle\pdi-ce-7.0.0.0-25\data-integration>pause
请按任意键继续. . .
错误原因:
程序启动设置的内存,大于物理机的内存,修改Spoon.bat文件设置就可以正常启动啦!
解决办法:
打开Spoon.bat,找到这下面这一行 内存配置:
if "%PENTAHO_DI_JAVA_OPTIONS%"=="" set PENTAHO_DI_JAVA_OPTIONS="-Xms1024m" "-Xmx2048m" "-XX:MaxPermSize=256m"
改为
if "%PENTAHO_DI_JAVA_OPTIONS%"=="" set PENTAHO_DI_JAVA_OPTIONS="-Xms 512m" "-Xmx1024m" "-XX:MaxPermSize=256m"
rem 而2048是超过32bit的最大值,将PENTAHO_DI_JAVA_OPTIONS="-Xms512m" "-Xmx1024m"。
不行就继续改小
修改"-Xmx1024m" "-XX:MaxPermSize=128m
改好后又出现 A JAVA Exception has occurred ,排查中。。。
---end