Указатель NULL
- это тот, который указывает на никуда. Когда вы разыскиваете указатель p
, вы говорите «дайте мне данные в месте, хранящемся в« p ». Когда p
является нулевым указателем, местоположение, хранящееся в p
, является nowhere
, вы говорите «Дайте мне данные в месте« нигде ». Очевидно, он не может этого сделать, поэтому он выбрасывает NULL pointer exception
.
В общем, это потому, что что-то не было правильно инициализировано.
Возможно, Вы ссылаетесь на другой проект через Eclipse, настраивают->, сборка соединяет каналом только. Это работает, пока Вы используете Eclipse для разрабатывания проекта.
Попытка, работающая сначала mvn install
в Панели проекта (для помещения Панели в репозиторий Знатока), и затем, добавляют зависимость к pom.xml Нечто.
, Который должен работать!.
Проверьте плагин m2eclipse. Это автоматически и динамично обновит путь сборки проекта при изменении англичанина. Нет никакой потребности в выполнении mvn eclipse:eclipse
.
плагин также обнаружит, если зависимость будет в той же рабочей области, и добавьте, что проект к сборке соединяет каналом.
Идеально при использовании m2eclipse Вы никогда не изменяли бы путь сборки проекта вручную. Вы всегда редактировали бы pom.xml вместо этого, который является надлежащим способом сделать это.
, Как был ранее указан, Знаток не будет знать о пути сборки проекта Eclipse. Действительно необходимо добавить все зависимости к англичанину, и необходимо удостовериться, что все зависимости созданы и установлены сначала путем выполнения mvn install
.
, Если Вы хотите разработать оба проекта с единственной командой тогда, Вы могли бы найти агрегирование проекта интересный.
Вы могли бы хотеть попробовать альтернативный подход, где у Вас есть родительский проект знатока и два дочерних проекта. скажем:
Родитель (pom.xml имеет ссылки на оба дочерних проекта/модуля)-> (зависит от B)-> B
тогда, когда Вы выполняете mvn eclipse:eclipse от корня Родителя, знаток генерирует проекты затмения для A и B, и это будет иметь B как необходимый проект в пути к классу A.
можно выполнить установку mvn от корня Родителя для получения обоих проектов скомпилировать.
Для завершения установки необходимо будет импортировать и A и B в Eclipse, удостоверяясь, что Вы не проверяете "Проекты копии в рабочей области".
Я думаю, что лучший способ обработать его состоит в том, чтобы сделать Панель проектом Знатока точно так же, как Foo, и затем mvn install
это так это доступно в Вашем локальном репозитории Знатока. Недостаток состоит в том, что необходимо установить тот проект каждый раз, когда Вы хотите, чтобы Знаток видел изменения, которые Вы вносите в Панель.
Не полный ответ:
среди англичанина Панели должен быть Foo для использования знатока для компиляции его.
я интересуюсь этим вопросом также, но с точки зрения того, как заставить затмение распознавать, что добавленная знатоками зависимость является на самом деле другим проектом в той же рабочей области. Я в настоящее время изменяю путь сборки после выполнения mvn eclipse:eclipse