有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

unix Java在AIX中不工作

我最近在AIX服务器中安装了git,git工作正常

但是java现在不起作用了

如果我使用java版本,我会得到foll输出

admin:stud:/webapps/WEB-INF/classes> java --version
exec(): 0509-036 Cannot load program java because of the following errors:
        0509-150   Dependent module /opt/freeware/lib/libiconv.a(shr4_64.o) could not be loaded.
        0509-152   Member shr4_64.o is not found in archive

我怎样才能解决这个问题

以前安装了以下java版本

admin:stud:/demo> java -version
java version "1.5.0"
Java(TM) 2 Runtime Environment, Standard Edition (build pap64dev-20080315 (SR7))
IBM J9 VM (build 2.3, J2RE 1.5.0 IBM J9 2.3 AIX ppc64-64 j9vmap6423-20080315 (JIT enabled)
J9VM - 20080314_17962_BHdSMr
JIT  - 20080130_0718ifx2_r8
GC   - 200802_08)
JCL  - 20080314

这是我的QA服务器的一个输出,它安装了与当前给出错误的开发机器相同的java。 我能做些什么来解决这个问题


共 (1) 个答案

  1. # 1 楼答案

    在AIX上编译很困难。我通常给ld一个libiconv的绝对路径,因为它有开源版本和AIX版本

    一个想法是把git移到一边。我通常制作一个名为的目录。real并将git从起始位置移动到目标位置。实子目录。i、 e.如果get是/down/this/path/git,则将其移动到/down/this/path/。雷亚尔/吉特

    然后编写一个脚本/down/this/path/git,它设置LIBPATH并执行/down/this/path/。雷亚尔/吉特

    #!/bin/ksh
    export LIBPATH=/blah/blah:/usr/lib
    exec /down/this/path/.real/git "$@"
    

    Java使这一点变得复杂,因为它设置LIBPATH(或它使用),并忽略LIBPATH之前设置的内容

    还有。。。您不希望混合和匹配两个libiconv。如果有人想要开源版本,则需要使用它,而不是AIX版本,反之亦然

    祝你好运