代码之家  ›  专栏  ›  技术社区  ›  Azzu

有没有办法安装openjdk8包并防止perl在FreeBSD 9.2上更新?

  •  3
  • Azzu  · 技术社区  · 7 年前

    我目前正在尝试在FreeBSD 9.2上安装openjdk8包。 为此,我使用了:

    sudo pkg安装openjdk8

    它没有任何问题。然而,这也将perl包更新到了5.24版本。我们有许多脚本只能与perl 5.16.3一起使用,所以我想保留这个perl版本。

    我已经尝试卸载perl 5.24包并重新安装perl 5.16.3,结果成功了。所以我确信openjdk真的不需要更新这个包。我已经试图锁定perl 5.16.3包,但openjdk8拒绝自己安装。我有这个消息:

    perl 5.16.3已锁定,不能修改

    安装结束,未安装我的软件包。此外,出于特定原因,我不想使用端口方法。我绝对想使用pkg方法。

    所以我的问题是:有没有办法完成我的openjdk8安装并禁止perl更新?

    谢谢你的帮助。

    2 回复  |  直到 7 年前
        1
  •  1
  •   Azzu    7 年前

    我终于找到了问题的答案。通过离线安装我的软件包,它安装了最少的依赖项。在FreeBSD上安装软件包并不是一种很流行的方式,但效果很好。

    只需遵循以下步骤:

    sudo pkg安装-F openjdk8

    这个命令允许您只获取包及其依赖项。完成后,您必须找到刚刚获取的包的位置。

    sudo find/-n*。txz-打印

    对我来说,结果是

    /var/cache/pkg/openjdk8-8.112.16_1-1baeb24a94。txz公司

    然后我进入这个目录:

    cd/var/cache/pkg

    现在您只需使用:

    sudo pkg静态添加openjdk8

    这就是全部。它将提取包和最小依赖项。

        2
  •  0
  •   nbari    7 年前

    安装时,您可能正在更新其他软件包,因此正在更新Perl openjdk8 没有提取其他依赖项,也没有perl依赖项 port Makefile .

    这是仅安装时的输出 openjdk8 :

    # pkg install openjdk8
    Updating FreeBSD repository catalogue...
    FreeBSD repository is up to date.
    All repositories are up to date.
    Checking integrity... done (0 conflicting)
    The following 1 package(s) will be affected (of 0 checked):
    
    New packages to be INSTALLED:
            openjdk8: 8.152.16
    
    Number of packages to be installed: 1
    
    The process will require 165 MiB more space.
    

    你可以做的是安装 openjdk8 然后安装所需的Perl版本,最后,它不应修改/影响 openjdk8 包裹

    此外,这可能很有用,

    pkg install --dry openjdk8
    

    这将检查将安装什么。

    如果存在依赖项(假设您没有perl),您可以尝试以下方法:

    pkg install --ignore-missing openjdk8