- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
Jenkins 2.2024.2
Kubernetes插件1.22.0
env.JAVA_HOME
变量设置的值与 sh 'printenv'
显示的值不同。我原以为 env
是环境的反射(reflect)。我也找不到 env.JAVA_HOME
设置的位置。它不反射(reflect)全局 JDK 配置中的值。我还 grep 了 openjdk 的 Jenkins Master 根目录,只找到了正确的值。
bash-4.4# grep openjdk *
config.xml: <home>/usr/local/openjdk-8/jre</home>
这是演示该行为的管道。
pipeline {
agent {
kubernetes { label 'java8-mvn3' }
}
stages {
stage('test') {
steps {
container ('java8-mvn3') {
echo env.JAVA_HOME
echo "++++++++++++++++++++++++++"
sh 'printenv | grep JAVA_HOME'
}
}
}
}
}
** 输出 **
[Pipeline] echo
/usr/lib/jvm/java-1.8-openjdk
[Pipeline] echo
++++++++++++++++++++++++++
[Pipeline] sh
+ printenv
+ grep JAVA_HOME
JAVA_HOME=/usr/local/openjdk-8
最佳答案
根据手册页:http://man7.org/linux/man-pages/man1/printenv.1.html
NOTE: your shell may have its own version of printenv, which usually
supersedes the version described here. Please refer to your shell's
documentation for details about the options it supports.
因此,您可能需要使用特定的 shell,例如 sh '''#!/bin/bash -c ...
或者作为另一种选项导出全局/阶段定义环境级别所需的选项
关于java - Jenkins Pipeline env.JAVA_HOME 与 sh printenv 不同,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60397789/
我在 ~/.bash_profile 中设置了如下环境变量。 export DYLD_FALLBACK_LIBRARY_PATH="/usr/local/Cellar/openssl/1.0.2l/l
我有以下命令... doppler run -- printenv TEST_PASSWORD 但是,当我运行以下命令时,我看到了 TEST_PASSWORD 的值... doppler run --
Jenkins 2.2024.2 Kubernetes插件1.22.0 env.JAVA_HOME 变量设置的值与 sh 'printenv' 显示的值不同。我原以为 env 是环境的反射(refle
我有两个用户 userA 和 userB。 我想打印 userB 的 env 详细信息。我正在从用户 A 运行以下命令。 userA$ sudo su userB -c 'printenv' 但它会打
我是一名优秀的程序员,十分优秀!