• 同一个Project从myeclipse8.5到myeclipse6.5的移植错误


    这里一个javaproject(KettleDemo1)源代码是在myeclipse8.5开发的,直接指向main方法run 正常。之后卸载了myeclipse8.5安装了myeclipse6.5

    在myeclipse6.5中导入已存在的project(KettleDemo1),执行报错如下图:

     分析错误信息:

    Exception in thread "main" java.lang.NoSuchFieldError: DAYS --(1)java错误
    at org.pentaho.di.trans.Trans.waitUntilFinished(Trans.java:1123) --(2)tran错误
    at kettle.ExecuteLocalTran.main(ExecuteLocalTran.java:70) --(3)java错误

    解决方法:其实按照大家的习惯,直接看第一个错误就可以,但是找不到第一个错误的解决方法的时候往往就要看下面的错误,外部错误第3个是由于第2个错误引起的,但是这里我发现java与kettle集成的包原封不动的拿过来在8.5中是正常的,在6.5中就不正常了吗?所以可以排除这些。那么现在就是第一个的错误了。

    带着第1个错误去百度、谷歌找了很多人,类似的Exception in thread "main" java.lang.NoSuchFieldError这样的错误,大家的回答也都是配置文件变量名错误,少包这几种解释,发现是在不靠谱。解决问题之前不要盲目,需要思考;6.5和8.5虽说有区别但是也不至于这么大吧,应该还是环境的问题,那么这里就是java的环境问题了。首先想到了myeclipse的版本问题,于是就看了myeclipse中java的jdk版本。

    从上图可以看出来,之前默认的的就是myeclipse6.5自定义的jdk(更换默认在前面打勾),我们点击add,添加一个我们自己的JRE,如下图

    点击“OK”

    下面重新执行java程序,OK没有问题,这个就是JRE的版本问题了,myeclipse默认的版本一般是比较低级的,这个时候应用我们自己的jre就可以解决这个问题了。

    英文名:kingwang & Email :kingstudy@vip.qq.com
  • 相关阅读:
    面向对象编程技术的总结和理解(c++)
    对类的理解(c++)
    对指针和引用的理解(c++)
    3DES对称加密算法(ABAP 语言实现版)
    org.springframework.util.Base64Utils线程安全问题
    SAP传输请求自动发布
    ABAP WB01 BDC ”No batch input data for screen & &“ ”没有屏幕 & & 的批输入数据“
    SAP S/4 1610 IDES + HANA 2.0 安装
    ABAP语言实现 左移 <<、无符号右移 >>> 位移操作
    ABAP表抛FTP通用程序
  • 原文地址:https://www.cnblogs.com/wxjnew/p/3092663.html
Copyright © 2020-2023  润新知