Javaは(導入時にModula-3モジュールになぞらえたというpackage以外には)モジュールのことを念頭において設計されてはいなかったにもかかわらず、Javaコミュニティでは多くの事実上のモジュールが存在している。Log4JからHibernate、Tomcatにいたるまで、どんなJavaライブラリも事実上モジュールである。一般的に言って、オープンソースのアプリケーションもクローズドソースのアプリケーションもいくつかの外部ライブラリへの依存性を持っているはずであり、それによって結果的にさらに別のライブラリへの依存性を推移的に持つことになる。 ライブラリもモジュールである ライブラリは暗黙的なモジュールである。ライブラリは必ずしもやりとりするための単一のインターフェースを持っているというわけではないだろうが、多くの場合(使われるためにあるべき)'パブリックな'APIとユースケースを文書化