ci: vcxproj를 packages.config 형식으로 복귀, BuildMsix가 nuget.exe 자동 처리
증상: VS 2022 Enterprise(GitHub windows-latest)에서 PackageReference 형식 vcxproj 빌드 시 ResolveNuGetPackageAssets가 "Sequence contains no elements" 오류로 실패. native vcxproj + PackageReference + msbuild restore 조합의 알려진 회귀. 해결: - src/EverythingToJpeg.Shell/EverythingToJpeg.Shell.vcxproj: PackageReference 제거, packages.config + Microsoft.Windows.ImplementationLibrary.targets imports 복귀, EnsureNuGetPackageBuildImports target 복귀. - src/EverythingToJpeg.Shell/packages.config 재추가. - packaging/BuildMsix.ps1: nuget.exe 없으면 dist.nuget.org에서 자동 다운로드, packages.config 기반 restore를 packages/ 폴더에 수행. - .gitignore: packages/, tools/ 제외. 이러면 사용자 PC(VS 2026)와 CI(VS 2022) 모두 동일한 흐름으로 빌드. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
parent
fc73b3c9a7
commit
0e752d76e2
4 changed files with 41 additions and 6 deletions
|
|
@ -99,12 +99,22 @@
|
|||
</ItemGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<None Include="packages.config" />
|
||||
<None Include="Source.def" />
|
||||
</ItemGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<PackageReference Include="Microsoft.Windows.ImplementationLibrary" Version="1.0.260126.7" />
|
||||
</ItemGroup>
|
||||
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
||||
|
||||
<ImportGroup Label="ExtensionTargets">
|
||||
<Import Project="..\..\packages\Microsoft.Windows.ImplementationLibrary.1.0.260126.7\build\native\Microsoft.Windows.ImplementationLibrary.targets"
|
||||
Condition="Exists('..\..\packages\Microsoft.Windows.ImplementationLibrary.1.0.260126.7\build\native\Microsoft.Windows.ImplementationLibrary.targets')" />
|
||||
</ImportGroup>
|
||||
|
||||
<Target Name="EnsureNuGetPackageBuildImports" BeforeTargets="PrepareForBuild">
|
||||
<PropertyGroup>
|
||||
<ErrorText>WIL NuGet 패키지가 복원되지 않았습니다. nuget restore를 먼저 실행하세요.</ErrorText>
|
||||
</PropertyGroup>
|
||||
<Error Condition="!Exists('..\..\packages\Microsoft.Windows.ImplementationLibrary.1.0.260126.7\build\native\Microsoft.Windows.ImplementationLibrary.targets')"
|
||||
Text="$(ErrorText)" />
|
||||
</Target>
|
||||
</Project>
|
||||
|
|
|
|||
4
src/EverythingToJpeg.Shell/packages.config
Normal file
4
src/EverythingToJpeg.Shell/packages.config
Normal file
|
|
@ -0,0 +1,4 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<packages>
|
||||
<package id="Microsoft.Windows.ImplementationLibrary" version="1.0.260126.7" targetFramework="native" />
|
||||
</packages>
|
||||
Loading…
Add table
Add a link
Reference in a new issue