本文告诉大家,如何修复 GitHub Action 构建过程提示 error NETSDK1127: The targeting pack Microsoft.WindowsDesktop.App.WindowsForms is not installed. Please restore and try again. 错误

在进行 GitHub Action 构建时,如果自己的项目是一个旧项目,采用旧的 .NET SDK 版本,将可以由于 GitHub Action 使用新的构建系统,缺乏旧的 SDK 导致构建失败

失败的错误信息输出例子如下

error NETSDK1127: The targeting pack Microsoft.WindowsDesktop.App.WindowsForms is not installed. Please restore and try again. [D:\a\X\X\NewLife.Core\NewLife.Core.csproj::TargetFramework=net6.0-windows]

简单的修复方法是给 GitHub 的 Action 的构建 yml 里加上 Setup dotNET 步骤,其 yml 添加的代码如下

    - name: Setup dotNET
uses: actions/setup-dotnet@v3
with:
dotnet-version: |
6.0.x
7.0.x
8.x

以上的 dotnet-version 请罗列出你所需的 SDK 版本,当然了,罗列太多的话,安装时间也不短

以下是一份完全的构建 yml 文件的例子代码

name: BuildAndTest

on: [push]

jobs:
build: runs-on: windows-latest steps:
- uses: actions/checkout@v1
- name: Setup dotNET
uses: actions/setup-dotnet@v3
with:
dotnet-version: |
6.0.x
7.0.x
8.x - name: Build
run: dotnet build --configuration Release - name: Test
run: dotnet test --configuration Release

具体的修复构建的 PR 请参阅 尝试修复 CI 构建 by lindexi · Pull Request #135 · NewLifeX/X

dotnet 修复 GitHub Action 构建过程提示 NETSDK1127 错误的更多相关文章

  1. 用 GitHub Action 构建一套 CI/CD 系统

    ​ 缘起 Nebula Graph 最早的自动化测试是使用搭建在 Azure 上的 Jenkins,配合着 GitHub 的 Webhook 实现的,在用户提交 Pull Request 时,加个 r ...

  2. sourcetree向github推送代码提示密码错误

    明明用户名和密码都是正确,sourceTree却在推送代码的时候提示无效的用户名或密码. 1.设置 2.选中并编辑 3.如果你本来选择的就是 GitHub,或者选择完以后还是不行的话,在 URL / ...

  3. hexo配合github action 自动构建(多种形式)

    已经使用HEXO正常构建GitHub页面 根据github action 给hexo配置自动部署github page 前往墨抒颖的个人网站查看纯净版 1. 为仓库设置访问密钥 第一步先生成密钥,打开 ...

  4. "CreateProcess error=206, 文件名或扩展名太长。",用gradle构建项目创建mapper文件时提示这个错误,是Windows Gradle长类路径问题,官方已经修复

    用gradle构建项目mapper文件时,提示这个错误,这个是Windows Gradle长类路径问题, gradle官方已经解决了这个问题. 官网给出的解决方法地址:https://plugins. ...

  5. 白嫖GitHub Action实现开源项目CICD

    什么是CI/CD?让你的项目变得更加敏捷! 在今天这个快速变化的时代,开发者们需要与时俱进,不断提升自己的工作效率.在这篇文章里,将一起探讨如何使用CI/CD和Github Action让你的项目更加 ...

  6. GitHub Action一键部署配置,值得拥有

    最近由于自己的个人应用增加,每次都需要在服务器手动发布,觉得特别麻烦,所以想通过代码控制自动发布,直接选择了GitHub Action. GitHub Action持续集成服务,目前已经免费开放使用, ...

  7. 你知道什么是 GitHub Action 么?

    本文是 GitHub Action 的入门教程,如您已有相关使用经验可以直接关掉. GitHub Action 是 GitHub 于 2018 年 10 月推出的一个 CI\CD 服务. 之前一直都是 ...

  8. Gradle的构建过程都不会?带你全面了解Android如何自定义Gradle 插件

    目前 Android 工程的默认构建工具为 Gradle,我们在构建 APK 的时候往往会执行 ./gradlew assembleDebug 这样的命令.. 那么这个命令到底代表着什么含义呢?命令的 ...

  9. Github Action 快速上手指南

    前言 各位读者,新年快乐,我是过了年匆忙赶回上海努力搬砖的蛮三刀. Github之前更新了一个Action功能(应该是很久以前了),可以实现很多自动化操作.用来替代用户自己设置的自动化脚本(比如:钩子 ...

  10. 两种github action 打包.Net Core 项目docker镜像推送到阿里云镜像仓库

    两种github action 打包.Net Core 项目docker镜像推送到阿里云镜像仓库 1.GitHub Actions 是什么? 大家知道,持续集成由很多操作组成,比如抓取代码.运行测试. ...

随机推荐

  1. java的对象内存和数据类型

    一.三种情况的对象内存图 (1)Java内存分配介绍: 栈: 队: 方法区(jdk7):加载字节码文件.(从jdk8开始取消方法区,新增元空间,把原来方法区的多种功能进行拆分,有的功能放到堆中,有的功 ...

  2. uniapp热更新和整包更新思路

    这里给大家分享我在网上总结出来的一些知识,希望对大家有所帮助 我们知道,在打包Android App之前,我们需要先通过HX生成打包资源.如果是通过cli创建的项目,则通过以下命令生成打包资源: ya ...

  3. ERROR 1290 (HY000): The MySQL server is running with the --skip-grant-tables option so it cannot execute this statement

    先执行: flush privileges; 再执行修改密码命令,可以了: set password for root@localhost=password('你的密码');

  4. KingbaseES 基于SQL的函数过程

    什么是SQL函数? SQL函数包体是一些可执行的SQL语言.同时包含1条以上的查询,但是函数只返回最后一个查询(必须是SELECT)的结果. 除非SQL函数声明为返回void,否则最后一条语句必须是S ...

  5. 探秘Kubernetes:在本地环境中玩转容器技术

    在云计算时代,Kubernetes 已成为云原生技术的真正基石.它是应用程序容器的编排动力源,可跨多个集群自动部署.扩展和运行容器.Kubernetes 不仅仅是一个流行词,它还是一种模式转变,是现代 ...

  6. 一文搞懂Javaweb的响应状态码

    一.状态码大类 状态码分类 说明 1xx 响应中--临时状态码,表示请求已经接受,告诉客户端应该继续请求或者如果它已经完成则忽略它 2xx 成功--表示请求已经被成功接收,处理已完成 3xx 重定向- ...

  7. #树链剖分,zkw线段树#nssl 1489 大冰隙2

    题目 有一个长度为\(n\)的01数列\(a\)和一个长度为\(n\)的数列\(b\)表示权值 支持单点修改以及区间查询,\(0\)和\(1\)可以看作左括号和右括号, 将一段区间所有可匹配的的括号去 ...

  8. CentOS 9 x64 使用 Nginx、Supervisor 部署 Go/Golang 服务

    前言 在 CentOS 9 x64 系统上,可以通过以下步骤来部署 Golang 服务. 1. 安装必要的软件包 安装以下软件包: Golang:Golang 编程语言 Nginx:Web 服务器 S ...

  9. 使用 GitLab CI/CD 和阿里云 CLI 自动部署前端项目

    一.什么是 CI/CD? CI(持续交付)是功能迭代后自动构建.打包.校验代码格式.跑单测.单测覆盖率,常见的就是 Webpack.Rollup.ESLint等. CD(持续部署)是经过 CI 后,代 ...

  10. 一文弄懂EnumMap和EnumSet

    目录 简介 EnumMap 什么时候使用EnumMap EnumSet 总结 一文弄懂EnumMap和EnumSet 简介 一般来说我们会选择使用HashMap来存储key-value格式的数据,考虑 ...