• batの磕磕碰碰


          前两天用kettle和存储过程实现了两个划小接口,然后用bat调用它们,在自己的xp系统上测试完全通过,没有任何问题。

    然后很开心滴把成果打包给北京的同事他们使用。第二天他们跟我说无法取数,我马上就流冷汗了,直觉不会这么简单就算了。

    万般无奈下,只得远程解决问题哪~!kettle最令人开心的是不需要安装,只需要提供相应的jdk版本就可以。打开spoon.bat,

    可以查询到相应的版本:

    ==============================================

    REM java version "1.6.0_17"
    REM Java(TM) SE Runtime Environment (build 1.6.0_17-b04)
    REM Java HotSpot(TM) 64-Bit Server VM (build 14.3-b01, mixed mode)

    ===============================================

          当同事说无法取数时,我第一个反应就是糟糕了,不会的jdk问题吧。唉,他的tomcat要用jdk5,但是kettle需要jdk6。

    jdk6的安装很简单,但是关键是环境变量的配置问题:

    @JAVA_HOME   D:Program FilesJavajdk1.6.0_02

    @PATH            %JAVA_HOME%in

    @CLASSPATH   .;%JAVA_HOME%libdt.jar;%JAVA_HOME%lib ools.jar

    (.;当前路径)

           测试jdk是否安装配置成功:【cmd】-【javac】

           提示:javac不是内部或者外部命令。度娘上都是告诉你环境配置错误了,姐要控告这些坑爹货,事实上并非一定是这个

    因素,有可能是因为命令的问题,有些系统无法缺省命令的后缀,所以测试时用javac.exe。

           终于环境已经配置好了,但是我写的bat虽然不提示找不到路径,但是却说找不到find命令。这个的原因和上面是同样

    的原理,只需要在spoon.bat里面将find改成find.exe即可解决问题。

    :USEJAVAFROMPENTAHOJAVAHOME
    FOR /F %%a IN ('.java.exe -version 2^>^&1^|%windir%system32find.exe /C "64-Bit"') DO

    ==================================================================

    最后有一个经验得到:调用bat时不要直接执行bat,要用cmd来调用bat,这样才会显示所有详细的日志,方便查找问题和

    调试。

        

  • 相关阅读:
    codeforces 1249D1/D2 Too Many Segments (贪心)
    codeforces 1244E Minimizing Difference (贪心)
    codeforces 1249C1 + 1249C2 (贪心)
    codeforces 1251D Salary Changing (二分+贪心)
    codeforces 1244C (思维 or 扩展欧几里得)
    P1040 加分二叉树(区间DP)
    POJ 1015 Jury Compromise (记录路径的背包问题)
    混合背包(单调队列优化多重背包)(模板)
    GAMES101系列笔记一 图形学概述与线性代数入门
    力扣514 自由之路
  • 原文地址:https://www.cnblogs.com/zhutouying/p/3148319.html
Copyright © 2020-2023  润新知