2010-04-30 12 views
8

Tôi muốn sử dụng Fluent NHibernate trong ứng dụng máy tính để bàn thương mại và tôi ít quan tâm đến việc cấp phép. Tôi đã tải Fluent NHibernate nhị phân precompiled, và nó có chứa danh sách các tập tin:Sử dụng Fluent NHibernate trong ứng dụng thương mại

Antlr3.Runtime.dll
Castle.Core.dll
Castle.DynamicProxy2.dll
FluentNHibernate.dll
Iesi. Collections.dll
log4net.dll
NHibernate.dll
NHibernate.ByteCode.Castle.dll

Tôi đoán tôi sẽ phải thêm tất cả các tệp này vào tập lệnh Inno Setup, sẽ cài đặt chúng trên máy tính của người dùng. Nhưng tôi nên làm gì để tuân thủ tất cả các giấy phép liên kết với mỗi tệp? Tôi chắc chắn tôi không phải là người đầu tiên muốn sử dụng Fluent NHibernate trong ứng dụng thương mại, vì vậy tôi hy vọng tôi sẽ không phải nghiên cứu từng giấy phép.

Tôi không phải là luật sư.

+0

Tìm thêm thông tin về giấy phép Apache: http://stackoverflow.com/questions/1007338/can-i-use-apache-software-license-2-0-lib-in-commercial-application – Paya

+4

Tôi bỏ phiếu để đóng câu hỏi này là chủ đề không chính vì nó là luật sư (chúng tôi cũng không phải là luật sư!) – BradleyDotNET

Trả lời

12

Việc cấp phép như sau:

Giấy phép Apache và BSD được cho phép. Về cơ bản, chỉ cần đảm bảo bạn bao gồm bản thân giấy phép và không xóa các thông báo bản quyền và bạn sẽ ổn. LGPL bổ sung thêm điều kiện là có thể liên kết ứng dụng của bạn với một phiên bản mới hơn của thư viện, áp dụng cho hầu hết mọi ứng dụng .NET - bạn phải thực hiện một nỗ lực có ý thức để vi phạm điều này.

Theo như tôi biết, đó là những hạn chế duy nhất bạn cần phải lo lắng. Không có giới hạn GPL copyleft trên bất kỳ thư viện nào, tất cả đều miễn phí cho mục đích thương mại.

Tuyên bố từ chối trách nhiệm: Tôi cũng không phải là luật sư. Hai đoạn cuối cùng phản ánh sự hiểu biết tốt nhất của tôi về văn bản thực tế của giấy phép hiện hành. Nếu bạn làm việc cho một công ty được giao dịch công khai hoặc lo lắng nghiêm túc về việc bị kiện, hãy tham khảo ý kiến ​​một luật sư thực sự.

+0

@Aaronaught: Theo [this] (http://stackoverflow.com/questions/1007338/can-i- sử dụng-apache-software-license-2-0-lib-in-commercial-application) Tôi sẽ hiển thị thông báo bản quyền bất cứ khi nào chương trình của tôi hiển thị thông báo bản quyền (về biểu mẫu, trình thuật sĩ cài đặt) cho các thư viện được cấp phép Apache. Nó có cần thiết không?Tôi có nên viết một nơi nào đó mà tập tin được phân phối theo đó giấy phép (trong tập tin trợ giúp ví dụ), và đặt bản sao của giấy phép đó trong thư mục, nơi thích hợp .dll là, hoặc sao chép chỉ là giấy phép trong các thư mục là đủ? – Paya

+0

@Paja: Nếu ứng dụng của bạn hiển thị thông báo bản quyền của riêng nó thì bạn cần bao gồm bất kỳ thông báo ghi nhận * nào (không phải toàn bộ giấy phép) của các thành phần với nó. Theo như tôi biết (một lần nữa, IANAL), bạn không cần phải hiển thị toàn bộ giấy phép ở bất cứ đâu, chỉ cần bao gồm nó. – Aaronaught

+0

@Aaronaught: Vâng, không có bất kỳ phím tắt nào mà tôi có thể thực hiện? Tôi không muốn gây ô nhiễm hình thức của tôi (những người hiển thị thông báo bản quyền) với bản quyền của riêng tôi cộng với 5 dòng thông báo bổ sung. Không phải là "Bản quyền (c) MyCompany 2010 \ nSản phẩm của tôi sử dụng phần mềm có bản quyền của chủ sở hữu tương ứng". hoặc một cái gì đó như thế chỉ đủ? – Paya