Azure构建代理

问题描述

情况::在天蓝色管道的构建过程中,我在自托管代理上使用JavaToolInstaller,并将“ java / JAVA_HOME_8_x64_”放置在目录
背景:当我将完全权限应用于该目录并为构建过程创建目录时,我不认为这是一个权限问题
评估:有人之前见过此问题吗?

复制步骤-托管现场代理

JavaToolInstaller

- task: JavaToolInstaller@0
  inputs:
    versionSpec: '8'
    jdkArchitectureOption: 'x64'
    jdkSourceOption: 'LocalDirectory'
    jdkFile: '/opt/jdk-8u251-linux-x64.tar.gz'
    jdkDestinationDirectory: '/opt/java'
    cleanDestinationDirectory: true
  condition: eq( variables['Agent.OS'],'Linux' )

构建期间出错

Cleaning destination folder before extraction: /opt/java
Retrieving the JDK from local path.
##[warning]Can\'t find loc string for key: ExtractingArchivetoPath
ExtractingArchivetoPath /opt/java/JAVA_HOME_8_x64_jdk-8u251-linux-x64_tar.gz
Creating destination folder: /opt/java/JAVA_HOME_8_x64_jdk-8u251-linux-x64_tar.gz
##[error]Unable to create directory '/opt/java/JAVA_HOME_8_x64_jdk-8u251-linux-x64_tar.gz'. EACCES: permission denied,mkdir '/opt/java/JAVA_HOME_8_x64_jdk-8u251-linux-x64_tar.gz'
##[error]Unable to create directory '/opt/java/JAVA_HOME_8_x64_jdk-8u251-linux-x64_tar.gz'. EACCES: permission denied,mkdir '/opt/java/JAVA_HOME_8_x64_jdk-8u251-linux-x64_tar.gz'
Finishing: JavaToolInstaller

解决方法

根据错误消息,您似乎没有写此文件的权限。请检查它,并确保您对该文件夹拥有w和r权限

步骤:

找到文件jdk-8u251-linux-x64.tar.gz->右键单击图标->选择“属性”->单击选项卡权限,然后检查帐户权限

或使用cmd ls –l {file name}检查文件夹权限,然后运行cmd c hmod [permission] [file_name]更新权限

请参考此链接以获取更多详细信息:How to change directory permissions in Linux