我的第一个版本 azure-pipelines.yml
)目标是 tempDirectory/bin
文件夹:
- task: JavaToolInstaller@0
inputs:
versionSpec: '11'
jdkArchitectureOption: 'x64'
jdkSourceOption: LocalDirectory
jdkFile: "JDK Bin.zip"
jdkDestinationDirectory: "$(agent.tempDirectory)/bin"
cleanDestinationDirectory: true
我得到了回报
Retrieving the JDK from local path.
Creating destination folder: I:\Agent-Win-A\_work\_temp\jdk
Extracting file: I:\Agent-Win-A\_work\1637\s\JDK Bin.zip
[command]I:\Agent-Win-A\_work\_tasks\JavaToolInstaller_c0e0b74f-0931-47c7-ac27-7c5a19456a36\0.151.2\FileExtractor\7zip\7z.exe x -oI:\Agent-Win-A\_work\_temp\jdk "I:\Agent-Win-A\_work\1637\s\JDK Bin.zip"
7-Zip [64] 16.00 : Copyright (c) 1999-2016 Igor Pavlov : 2016-05-10
Scanning the drive for archives:
1 file, 8875164 bytes (8668 KiB)
Extracting archive: I:\Agent-Win-A\_work\1637\s\JDK Bin.zip
--
Path = I:\Agent-Win-A\_work\1637\s\JDK Bin.zip
Type = zip
Physical Size = 8875164
Everything is Ok
Folders: 1
Files: 121
Size: 21509208
Compressed: 8875164
(node:12092) Warning: Use Cipheriv for counter mode of aes-256-ctr
JAVA_HOME is being set to: I:\Agent-Win-A\_work\_temp\jdk\bin
JAVA_HOME_11_x64 is being set to: I:\Agent-Win-A\_work\_temp\jdk\bin
## [error]Directory does not exist: I:\Agent-Win-A\_work\_temp\jdk\bin\bin
## [error]Directory does not exist: I:\Agent-Win-A\_work\_temp\jdk\bin\bin
我不知道它应该去哪里找 \bin\bin
-在我看来,一切都按预期进行
我的.zip文件具有以下结构:
bin/
- server/
- somefile.dll
- *lots of dlls*
有人知道我在哪里搞砸了吗?
1条答案
按热度按时间jmo0nnb31#
[错误]目录不存在:i:\agent-win-a\u work\u temp\jdk\bin\bin
这个问题的根本原因可能是
JavaToolInstaller
任务未创建正确的目标文件夹。根据我的测试,我可以用相同的yaml定义成功地运行任务。
我注意到该任务将创建一个目标文件夹:
x\Agent2\_work\_temp\bin\JAVA_HOME_11_x64_JDK Bin_zip
但在你的情况下,它创建了错误的路径:
\_work\_temp\jdk
根据你的日志,你正在使用JavaToolInstaller
任务版本:0.151.2。这可能是旧的任务版本。我使用的是0.177.0版本你可以试着导航到
I:\Agent-Win-A\_work\_tasks
找到文件夹JavaToolInstallerx
. 然后可以删除它并重新运行管道。管道将下载最新版本的
JavaToolInstaller
自动执行任务。