Tôi đang gặp sự cố với số MSBuild
Tôi không thể tự mình khắc phục sự cố. Kết quả là tôi dựa vào sự khôn ngoan của cộng đồng.Làm thế nào để MSBuild xây dựng mục tiêu tùy chỉnh được chỉ định trong csproj building sln?
Thực trạng tôi đang gặp rắc rối với
Tôi có một tập tin soluiton chứa một số dự án với sự phụ thuộc vào các dự án khác trong cùng một giải pháp. Tôi muốn nối thêm một mục tiêu tùy chỉnh vào một trong các tệp csproj của dự án và xây dựng nó từ dòng lệnh. Nó sẽ cho phép tôi tạo tất cả các tệp nhị phân đầu ra cần thiết cho dự án này để xử lý thêm trong khi xây dựng mục tiêu tùy chỉnh. Nhưng điều chính là tôi không thể tìm ra cách để làm điều đó, googling cũng không giúp được gì.
Đơn giản hoá
Để thực hiện điều đơn giản hơn tôi quyết định để thực hiện một giao diện điều khiển dự án C# mới, thêm một mục tiêu tùy chỉnh đơn giản để hồ sơ của dự án và cố gắng làm cho nó xây dựng. Vẫn không thành công! Dưới đây là những gì tôi đã thực hiện cho đến thời điểm này:
Đã tạo ứng dụng giải pháp với dự án bảng điều khiển mặc định. Đây gaves tôi ít nhất hai tập tin:
- app.sln
- coreapp \ coreapp.csproj
coreapp.csproj Modified với việc bổ sung các mục tiêu tùy chỉnh của tôi bên trong thẻ Project
<Target Name="SampleTarget"> <Message Text="This is a SampleTarget" /> </Target>
Chạy trên dòng lệnh, lệnh sau
%windir%\Microsoft.NET\framework\v3.5\msbuild.exe app.sln /t:coreapp:SampleTarget
hoặc thậm chí
%windir%\Microsoft.NET\framework\v3.5\msbuild.exe app.sln /t:coreapp.csproj:SampleTarget
Kết quả
Không may mắn, đối diện với lỗi
MSB4057: The target "coreapp.csproj:SampleTarget" does not exist in the project.
Tôi nghi ngờ rằng MSBuild
nghĩ rằng somehting về cơ bản khác với những gì tôi muốn nó suy nghĩ ...
Bên cạnh đó, tôi cũng cố gắng đặt trên cùng một dòng lệnh biến môi trường MSBuildEmitSolution = 1 để buộc msbuild đổ một giải pháp tạm thời tập tin mà nó tạo ra trong khi xử lý giải pháp. Trong tập tin này, quả thực, không có mục tiêu như vậy. Tuy nhiên tôi đoán đó không phải là lý do vì tôi đã hỏi msbuild để xây dựng coreapp.proj nơi đích thực của SampleTarget.
Câu hỏi đặt ra là cách xây dựng SampleTarget trong kịch bản đơn giản này bằng cách sử dụng tệp giải pháp vì nó có thể chứa các phụ thuộc cho dự án chứa mục tiêu SampleTarget này?
Tôi sẽ rất tuyệt vời cho bất kỳ loại trợ giúp hoặc săn bắt nào để điều tra thêm!
Liệu sự giúp đỡ này? http://stackoverflow.com/questions/3397460/custom-common-target-to-build-a-solution –