gpt4 book ai didi

java - Jar 文件附加到末尾时不会添加到 java 类路径

转载 作者:行者123 更新时间:2023-12-02 06:10:50 26 4
gpt4 key购买 nike

我有一个名为 $CLASSPATH 的环境变量,我将其用作 java 类路径来运行特定的 java 代码。

这个$CLASSPATH变量相当长。它的大小约为 66427 字节 ( see how long it is )

现在这是奇怪的行为。

当我将某个 jar 文件(例如 bar.jar)附加到 $CLASSPATH开头时,该 jar 文件会添加到类路径和我的代码运行良好。

我在 shell 脚本中执行此操作,如下所示,

CLASSPATH=/home/foo/bar.jar:$CLASSPATH

但是,当我将 bar.jar 附加到 $CLASSPATH末尾时,由于缺少 bar.jar,我的代码给出了异常 文件!

CLASSPATH=$CLASSPATH:/home/foo/bar.jar

为什么会有这种奇怪的行为?

我在这里遗漏了什么吗?

更新:

如果适用,请查看 shell 上的 xargs --show-limits 命令生成的输出。

foo@foo-laptop:~$ xargs --show-limits
Your environment variables take up 3632 bytes
POSIX upper limit on argument length (this system): 2091472
POSIX smallest allowable upper limit on argument length (all systems): 4096
Maximum length of command we could actually use: 2087840
Size of command buffer we are actually using: 131072

最佳答案

这个question会帮助你的。

它说:

尝试使用:xargs --show-limits

您的环境变量占用2446字节POSIX 参数长度上限(本系统):2092658POSIX 参数长度的最小允许上限(所有系统):4096我们实际可以使用的命令的最大长度:2090212我们实际使用的命令缓冲区的大小:131072每个参数没有限制,但整个命令行长度的总数。在我的系统(Fedora 15/zsh)中,它接近 2Mb。 (第 4 行)。

检查生成的 $CLASSPATH 的大小

关于java - Jar 文件附加到末尾时不会添加到 java 类路径,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21901790/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com