web-dev-qa-db-ja.com

Apache Software License 2.0をプロジェクトに適用するときに、ソースファイルのライセンスヘッダーは必要ですか?

Apache Software License 2.0付録 を読むと、今何をしなければならないのか正確にはわかりません。

付録:作業にApacheライセンスを適用する方法

Apacheライセンスを作業に適用するには、次のボイラープレート通知を添付します。角括弧「[]」で囲まれたフィールドを独自の識別情報に置き換えます。 (角括弧は含めないでください!)テキストは、ファイル形式の適切なコメント構文で囲む必要があります。また、サードパーティのアーカイブ内で簡単に識別できるように、ファイルまたはクラスの名前と目的の説明を著作権表示と同じ「印刷ページ」に含めることをお勧めします。

もう少し説明すると、私は現在githubのオープンソースプロジェクトに貢献しています。そこでは、ASL2.0でライセンスするという決定がなされました。最新のコミットでは、ライセンステキストがルートディレクトリにLICENSEとして追加されました。

興味深い部分は今です:Apache Software Licenseの下でコードを完全にライセンスするために他に何をしなければならないか。具体的には、「作業」と見なされるものは何ですか。また、プロジェクトのすべてのソースファイルへのボイラープレート通知を含める必要がありますか?

他のオープンソースプロジェクトで見たように、既存のREADMEに通知を追加できるはずです。以下に沿ったもの:

ライセンス:

特に明記されていない限り、このリポジトリ内のすべてのファイルは、Apache Software License 2.0の下でライセンスされています[ここにボイラープレートの通知を挿入]

ソースヘッダーのApacheポリシー (Apache Software Foundation所有のプロジェクトのみを対象としていますが)は次のように述べているため、これは問題ないと思います。

元の各ソースドキュメント(コードとドキュメント、ただしLICENSEおよびNOTICEファイルを除く) [〜#〜] [〜#〜] に短いライセンスを含める必要があります上部のヘッダー。配布物にCLA、CCLA、またはソフトウェア許可(サードパーティライブラリなど)の対象外のドキュメントが含まれている場合は、ポリシーガイドを参照してください。


  1. 各ソースファイルには、次のライセンスヘッダーが含まれている必要があります。ヘッダーには著作権表示がないことに注意してください。

具体的には、ここでの「すべき」は、すべてのファイルのライセンスヘッダーが、ASLでライセンスされたプロジェクトのすべてのソースファイルに必須ではないことを思い起こさせます。

16
Vogel612

いいえ、すべてのファイルにライセンスを含める必要はありません。これは、誰かがプロジェクトのファイルの1つを他のファイルとは切り離して表示している場合、そのファイルの使用条件を特定できることを保証するためです。これにより、法的に言えば、意図するライセンス条項が十分であることが明確になります。

(これは法的な助言ではないことに注意してください。これが重要な場合は、管轄区域の弁護士などに助言を求める必要があります。)

19
Jules

すでにコメントで言及されていますが、わかりやすくするために、Apache Software Foundationのセクションを繰り返しますFAQここ(後で追加された可能性があります)。

ライセンスのコピーを各ソースファイルに保存する必要がありますか?

配布ごとに必要なライセンスの完全なコピーは1つだけです。ポリシーを参照してください。

http://www.Apache.org/dev/apply-license.html#copy-per-file

4
friederbluemle