2016-05-23 2 views
0

У меня есть проект Maven в Netbeans.Установите банку через maven в Netbeans, чтобы не увидеть местоположение pom.mxl

У меня есть локальная банка, которую я хочу вставить в проект.

Через ЦМД я запускаю команду

C:\Users\Alia-PC>mvn install:install-file-Dfile=C:\opt\glassfish4\glassfish\dom ains\domain1\applications\myproject\files\rrunner_ja r\Ropt-Updated.jar \ -DgroupId=rcaller -DartifactId=RCaller \-Dversion=2.4 -Dpackaging=jar -e 

Но я получаю эту ошибку для pom.xml.

[INFO] Error stacktraces are turned on. 
[INFO] Scanning for projects... 
[INFO] ------------------------------------------------------------------------ 
[INFO] BUILD FAILURE 
[INFO] ------------------------------------------------------------------------ 
[INFO] Total time: 0.094 s 
[INFO] Finished at: 2016-05-23T14:27:42+03:00 
[INFO] Final Memory: 5M/77M 
[INFO] ------------------------------------------------------------------------ 
[ERROR] The goal you specified requires a project to execute but there is no POM 
in this directory (C:\Users\Alia-PC). Please verify you invoked Maven from the 
correct directory. -> [Help 1] 
org.apache.maven.lifecycle.MissingProjectException: The goal you specified requi 
res a project to execute but there is no POM in this directory (C:\Users\Alia-PC 
). Please verify you invoked Maven from the correct directory. 
     at org.apache.maven.lifecycle.internal.LifecycleStarter.execute(Lifecycl 
eStarter.java:84) 
     at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:307) 
     at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:193) 
     at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:106) 
     at org.apache.maven.cli.MavenCli.execute(MavenCli.java:863) 
     at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:288) 
     at org.apache.maven.cli.MavenCli.main(MavenCli.java:199) 
     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
     at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl. 
java:62) 
     at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces 
sorImpl.java:43) 
     at java.lang.reflect.Method.invoke(Method.java:497) 
     at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Laun 
cher.java:289) 
     at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.jav 
a:229) 
     at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(La 
uncher.java:415) 
     at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java: 
356) 
[ERROR] 
[ERROR] Re-run Maven using the -X switch to enable full debug logging. 
[ERROR] 
[ERROR] For more information about the errors and possible solutions, please rea 
d the following articles: 
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MissingProject 
Exception 

Даже если бы я попытался сделать

cd C:\opt\glassfish4\glassfish\domains\domain1\applications\myproject\ 

может кто-нибудь сказать мне причину проблемы и как это исправить?

+0

Я предполагаю, что это https://maven.apache.org/guides/mini/guide-3rd-party-jars-local.html и это HTTP://stackoverflow.com/questions/4955635/how-to-add-local-jar-files-in-maven-project может вам помочь. –

+0

@BilboBaggins спасибо. Для второй ссылки я попробовал ответ http://stackoverflow.com/a/22300875/6326346, но я мог бы установить системную панель правильно. Я не могу понять, как я могу написать правильный файл $ {project.basedir} /src/main/resources/yourJar.jar. Пожалуйста, не могли бы вы мне помочь? – Emklj

+0

Уммм угадайте, вам нужно попробовать что-то вроде этого из текущего каталога проекта на путь lib. –

ответ

0

Это двухступенчатый процесс:

установить 3 участник баночку в местном:

mvn install:install-file -Dfile=<path-to-file> -DgroupId=<group-id> -DartifactId=<artifact-id> -Dversion=<version> -Dpackaging=<packaging> 

Заставить банку доступна для вашего проекта:

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

<dependency> 
      <groupId>Specified GroupID</groupId> 
      <artifactId>Specified ArtifactID</artifactId> 
      <version>Specified Version</version> 
    </dependency> 

Что эта ошибка говорит мне, что вы пытаетесь построить из каталога, кроме директории вашего проекта, где нет pom не определен.

Идеальная структура папок Maven:

Project 
     | 
     ---src 
      | 
      ---main 
       | 
       ---java 
       ---so on 
      ---test 
       | 
       ---so on 
     ---Pom.xml 
+0

Благодарим вас за ответ. У меня есть проект в файле, который содержит подфайл, имеющий src проекта и другую подпапку в родительской папке с файлом jar. Зависимости существуют в pom.xml – Emklj

+0

Я обновил свой ответ с идеальной структурой проекта. Как вы можете видеть, pom должен находиться в корневом каталоге. В любом случае вам нужно вызывать сборку из каталога, в котором находится 'pom'. – Helios