MSBuild nhận thông báo lỗi và cảnh báo đã được định dạng đặc biệt bởi nhiều công cụ dòng lệnh mà thường viết thư cho giao diện điều khiển. Ví dụ, hãy xem các thông báo lỗi sau đây - tất cả chúng đều được định dạng phù hợp để MSBuild và Visual Studio thân thiện.
Main.cs(17,20): warning CS0168: The variable 'foo' is declared but never used
C:\dir1\foo.resx(2) : error BC30188: Declaration expected.
cl : Command line warning D4024 : unrecognized source file type 'foo.cs', object file assumed
error CS0006: Metadata file 'System.dll' could not be found.
Các thông điệp này xác nhận với định dạng đặc biệt được hiển thị dưới đây, và bao gồm 5 phần - theo thứ tự của các bộ phận rất quan trọng và không nên thay đổi:
xứ (Bắt buộc)
Xuất xứ có thể để trống. Nếu có, nguồn gốc thường là tên công cụ, chẳng hạn như 'cl' trong một trong các ví dụ. Nhưng nó cũng có thể là tên tệp, như 'Main.cs' được hiển thị trong ví dụ khác. Nếu nó là một tên tập tin, sau đó nó phải là tuyệt đối hoặc một tên tập tin tương đối, tiếp theo là một thông tin dòng/cột trong ngoặc đơn tùy chọn theo một trong các hình thức sau:
(line) or (line-line) or (line-col) or (line,col-col) or (line,col,line,col)
mục con (Tùy chọn)
Danh mục con được sử dụng để phân loại chính nó hơn nữa và không được bản địa hóa.
loại (Bắt buộc)
Thể loại phải là 'lỗi' hoặc 'cảnh báo'. Trường hợp không quan trọng. Giống như nguồn gốc, danh mục không được bản địa hóa.
Mã (Bắt buộc)
Mã xác định một lỗi cụ mã/cảnh báo ứng dụng. Mã không được bản địa hóa và không được chứa dấu cách.
Text (Tùy chọn)
Thành viên thân thiện văn bản giải thích các lỗi, và phải được bản địa hoá nếu bạn phục vụ cho nhiều miền địa phương.
Tôi cũng không thể tìm thấy. Bất kỳ ai? – liori