tfs - 将 TF CLC 连接到本地 TFS 2017
问题描述
我尝试使用实际构建的 TEE-CLC(版本 14.134.0)连接到 TF Server 2017。发出命令时
./tf workfold "$/Collection" "/home/user/TFS/Collection" -map -login:username,password -server:"https://*ip-address*/tfs" -workspace:"WorkspaceName"
系统提示我找不到工作区“WorkspaceName”。然后我继续使用以下命令创建一个新的工作区:
./tf workspace -new -collection:"https://*ip-address*/tfs/DefaultCollection"
TF 询问我提供的用户名和密码,然后继续抛出执行,因为它无法验证服务器自签名 SSL 证书:
sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
现在我只是在寻找一种方法来告诉 TEE-CLC 接受不受信任的证书。我在 Google 上搜索时找到了一些解决方案,但它们似乎都不适用于实际的 TEE-CLC 版本。
一种解决方案建议编辑客户端的配置文件选项(https://social.msdn.microsoft.com/Forums/vstudio/en-US/f11ea086-be44-4fa2-8e4e-ca8c6c92a8d8/im-receiving-the-error- quotunable-to-find-valid-certification-path-to-requested-targetquot-when?forum=tee),但整个“profile”命令在我正在使用的版本中不可用(不再?)。
有没有办法告诉 TEE-CLC 接受不受信任的证书?
解决方案
我最终将 CA 证书导入 javas 密钥库:
sudo keytool -importcert -alias CA_NAME -cacerts -keystore $java_home/lib/security/cacerts -file path/to/ca.cer
openjdk 的密钥库的默认密码是“changeit”。之后,我继续创建工作区并将它们相应地映射到我的本地文件夹:
tf workfold "$/ProjectName" /path/to/local/folder/ProjectName -workspace:"hostname;username" -map
推荐阅读
- javascript - innerHTML 无法正常工作 Javascript
- maven - 如何使 POM 中的依赖项使用特定版本的库
- codeigniter - 我项目中codeigniter中的未定义索引
- r - 计算大型数据框中的单词和词干(RStudio)
- curl - 没有从詹金斯执行 curl 命令
- java - iText 7:未找到外部参照小节
- node.js - javascrpit 中的 Array.push 用最后一个推送的值替换所有预先存在的值,保持长度不变
- java - 使用 FirestoreRecyclerView 加载数据会使应用程序崩溃
- sql-server - SQL 仅将文件从驱动器读取到字节数组中
- javascript - 尝试使用 `gatsby-source-mongodb` 从 MongoDB 获取数据到 Gatsby