Kettle
Jan 13

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

Tags:
分页: 1/1 第一页 1 最后页 [ 显示模式: 摘要 | 列表 ]