2016-08-27 2 views
0

я файл Stack.java хранится вКак включить класс из пакета в другом месте

C:\Users\Aaditya\Documents\Github\Data Structures\com\stack\Stack.java 

В декларации файла, я дал это

package com.stack; 

Так Теперь у меня есть файл Parantheses.java хранится в

C:\Users\Aaditya\Documents\Github\Data Structures\Parantheses\Parantheses.java 

и теперь, когда у меня есть код, приведенный ниже в этом файле, а затем компилировать его,

import com.stack.*; 

Я получаю следующую ошибку

C:\Users\Aaditya\Documents\GitHub\Data Structures\Parantheses>javac *.java 
Parantheses.java:1: error: package com.stack does not exist 
import com.stack.*; 
^ 

Можно ли сортировать это ошибка для меня.

PS: Когда я положил все Java-файлы в одну папку, а затем собрать их (без «импорта» и «пакет» вещи), я не получаю какие-либо ошибки. Программа работает успешно.

Спасибо. :)

+0

При компиляции вам придется включить оба этих каталога в исходный путь. –

+0

Оформить заказ [это] (http://docs.oracle.com/javase/8/docs/technotes/tools/windows/toc.html) Учебник Oracle, особенно «Настройка пути к классу». – beatngu13

ответ

0

Попробуйте использовать -sourcepath при использовании javac, который позволит вам включать файлы из разных мест.

Ссылка: http://docs.oracle.com/javase/8/docs/technotes/tools/windows/javac.html http://docs.oracle.com/javase/8/docs/technotes/tools/windows/classpath.html#CBHHCGFB

С другой стороны, лучшим способом для управления зависимостями является Maven.

+0

Теперь, когда я запускаю ** javac * .java -classpath ".. \ Stack" com.stack **, я получаю эту ошибку ** ошибка: имена классов, com.stack, принимаются только в том случае, если обработка аннотации явно просил ** – Sparker0i

Смежные вопросы