在容器下编译的一些问题解决

在Ubuntu20.04下编译zookeeper时,发现如下错误:

... Duplicate cpuset controllers detected. ... Picking /sys/fs/cgroup/cpuset ...

此错误是一个警告,,正常来说不应该引起编译失败,但因为zookeeper将javacc的输出作为了META-INF/MANIFEST.MF里面的version_info,导致这堆警告也被打入到MANIFEST.MF里面,这样jar包的检测机制认为这个jar包是有问题的。

解决方案有几种:

1,放宽jar包的检测机制:看上去后面运行这个jar包都会带着这个信息;

2,解决这个警告信息:看上去靠谱一些。

发现从代码层解决,需要升级新的openjdk,当前这个版本openjdk对容器化的"支持"不是很好,于是只能改日志等级,但我不想改变现在的代码和配置,采用如下命令行设置即可:

export JAVA_HOME=/usr/lib/jvm/java
export ANT_HOME=/usr/share/ant
export PATH=${ANT_HOME}/bin:${JAVA_HOME}/bin:${PATH}
export JAVA_TOOL_OPTIONS="-Xlog:disable -Xlog:all=warning:stderr:uptime,level,tags"

整个过程虽然有一些曲折,但最终解决了问题。

Monthly Archives

Pages

Powered by Movable Type 7.9.4

About this Entry

This page contains a single entry by Cnangel published on January 29, 2023 3:32 PM.

debmake自动创建模板失败的解决方案 was the previous entry in this blog.

在rhel安装高版本nodejs is the next entry in this blog.

Find recent content on the main index or look in the archives to find all content.