
Откройте проекцию Java и выберите пункт меню Файл > Создать > Проект.... Откроется мастер Создать проект.
Выберите Проект Java в списке мастеров и нажмите Далее.
На следующей странице введите "Framework" в поле Имя проекта.
В группе Расположение измените выбор на Создать проект на основе существующего кода.
Щелкните на Обзор... и выберите каталог D:\Framework.

Нажмите кнопку Далее.
На следующей странице убедитесь, что каталог JavaSourceFiles был автоматически добавлен в качестве исходной папки.
Откройте его и просмотрите содержимое папки с исходным кодом проекта:

В проекции Java нажмите Ctrl+N. Откроется окно мастера Создать.
Выберите Проект Java в списке мастеров и нажмите Далее.
На следующей странице введите "Product" в поле Имя проекта.
В группе Расположение измените выбор на Создать проект на основе существующего кода.
Щелкните на Обзор... и выберите каталог D:\Product.

Нажмите кнопку Далее.
Теперь мы добавим зависимость в структуру исходного кода проекта...
На следующей странице убедитесь, что каталог JavaSourceFiles был автоматически добавлен в качестве исходной папки.
Перейдите к вкладке Проекты.

Нажмите Добавить.
В Выбор требуемого проекта отметьте "Framework".

Нажмите OK.
Добавим правила доступа к содержимому структуры проекта, чтобы предоставить или запретить доступ к исходным папкам, пакетам и классам "Framework".
На вкладке Проекты выберите "Правила доступа" проекта, зависящего от "Framework".

Нажмите Изменить....
В Правила доступа к типам нажмите Добавить....

В Изменить правило доступа выберите "Запрещено" для Разрешения.
Введите "**/forbidden/**" в поле Шаблон правила.

Нажмите OK.
Добавьте еще одно правило доступа:
Разрешение: "Нежелательно" и Шаблон правила: "**/internal/**".
Правила доступа теперь выглядят следующим образом:

Нажмите OK.
Зависимый проект теперь имеет набор из 2 правил доступа.

Нажмите кнопку Готово.
Вы создали проект Java, содержащий исходный код проекта "Product" и использующий исходный код проекта "Framework".
Некоторые пакеты проекта "Framework" имеют ограниченный доступ, и при попытке их импорта компилятор сообщит об ошибке или предупреждении, в зависимости от уровня ограничений:

Работа с путями компоновки
Создание проекта Java
Создание проекта
Java с папками исходного кода
Создание новой исходной папки
Работа со Структурой пакетов