다음을 통해 공유


NuGet 경고 NU5129

하나 이상 .<확장> 파일은 '<build_folder>/tfm>/<'에 있지만 '<build_folder>/tfm>/<<package_id>.<확장>'이 아닙니다.

<extension>는 다음 중 targetsprops하나입니다. <build_folder>는 다음 중 하나입니다. buildbuildTransitivebuildCrossTargetingbuildMultiTargeting <tfm>대상 프레임워크 모니커이거나 존재하지 않을 수 있습니다. <package_id> 는 패키지의 패키지 식별자 입니다.

예:

'build/netstandard2.0/'에서 하나 이상의 .targets 파일이 발견되었지만 'build/netstandard2.0/MyPackage.targets'는 없습니다.

'build/netstandard2.0/'에서 하나 이상의 .props 파일이 발견되었지만 'build/netstandard2.0/MyPackage.props'는 없습니다.

'buildTransitive/net472/'에서 하나 이상의 .props 파일이 발견되었지만 'buildTransitive/net472/My.Package.Id.props'는 없습니다.

'buildMultitargeting/netcoreapp3.0/'에 하나 이상의 .targets 파일이 있지만 'buildMultitargeting/netcoreapp3.0/Contoso.Utilities'에서 발견되었습니다. targets'가 아닙니다.

'build/'에서 하나 이상의 .props 파일이 발견되었지만 'build/AdventureWorks.Tools.props'는 없습니다.

문제

MSBuild props 및 Target을 포함하는 패키지는 확장 .targets 전에 .props 패키지 ID를 사용하는 명명 규칙을 따라야 합니다. 이 규칙을 따르지 않는 파일은 패키지를 사용하는 프로젝트로 가져오지 않습니다.

예: 패키지 ID에 Contoso.Utilities 파일이 있고 포함된 경우 패키지를 build/Contoso.Utilities.props build/Utilities.targets사용하여 파일만 Contoso.Utilities.props 프로젝트로 가져옵니다. Utilities.targets 는 NuGet에서 가져오지 않습니다.

솔루션

규칙을 충족하도록 파일 이름을 바꿉니다.

위의 예제 build/netstandard2.0/Utilities.targets 에서는 NuGet에서 가져오기를 build/netstandard2.0/Contoso.Utilities.targets 시작하도록 이름을 바꿔야 합니다. 가져오는 Contoso.Utilities.props경우 Utilities.targets 확장명도 사용하도록 파일 이름을 .props 바꿉니다.