2014-10-01 15 views
14

Ilekroć wykonujemy nasz cel site w Maven, otrzymujemy długą listę błędów związanych z zależnościami w naszym dzienniku konsoli. Wydaje się, że błędy są generowane podczas budowania części raportu raportu Dependency. Wydaje się, że wszystkie błędy są generowane, gdy zasoby są sprawdzane w repozytorium http://maven.glassfish.org/content/groups/glassfish. (Istnieje również dziwny błąd JavaFX, ale na razie nie będziemy się tym martwić) Kompilacja zakończy się pomyślnie.Dlaczego otrzymuję błąd Maven: "Nie można ustalić, czy zasób X istnieje w http://maven.glassfish.org/content/groups/glassfish"?

10:21:52 [INFO] Generating "Dependencies" report   --- maven-project-info-reports-plugin:2.7:dependencies 
10:22:07 [ERROR] Artifact: com.oracle:javafx:jar:2.2.25 has no file. 
10:22:09 [WARNING] The repository url 'http://repository.springsource.com/maven/bundles/external' is invalid - Repository 'spring-external' will be blacklisted. 
10:22:10 [WARNING] The repository url 'http://download.oracle.com/maven' is invalid - Repository 'oracleReleases' will be blacklisted. 
10:22:12 [ERROR] Unable to determine if resource com.fasterxml.jackson.core:jackson-databind:jar:2.4.1.3:compile exists in http://maven.glassfish.org/content/groups/glassfish 
10:22:12 [ERROR] Unable to determine if resource com.google.api-client:google-api-client:jar:1.19.0:compile exists in http://maven.glassfish.org/content/groups/glassfish 
10:22:13 [ERROR] Unable to determine if resource com.google.apis:google-api-services-calendar:jar:v3-rev88-1.19.0:compile exists in http://maven.glassfish.org/content/groups/glassfish 
10:22:13 [ERROR] Unable to determine if resource com.google.guava:guava-jdk5:jar:13.0:compile exists in http://maven.glassfish.org/content/groups/glassfish 
... 

Zrobiłem rozeznanie, i wydaje się, że adres URL repozytorium wymienione są prawidłowe. Zastanawiam się, czy to może być błąd w naszej wtyczce raportu Dependencies? Nie bardzo wiadomo, sugestie lub spekulacje są mile widziane w tym momencie

Edit: zamieszczaniu wyjścia konsoli opisowy dla jednego z tych błędów poniżej:

[ERROR] Unable to determine if resource com.google.guava:guava-jdk5:jar:13.0:compile exists in http://maven.glassfish.org/content/groups/glassfish 
org.apache.maven.wagon.TransferFailedException: Failed to look for file: http://maven.glassfish.org/content/groups/glassfish//com/google/guava/guava-jdk5/13.0/guava-jdk5-13.0.jar. Return code is: 301 
    at org.apache.maven.wagon.providers.http.LightweightHttpWagon.resourceExists(LightweightHttpWagon.java:351) 
    at org.apache.maven.report.projectinfo.dependencies.RepositoryUtils.dependencyExistsInRepo(RepositoryUtils.java:228) 
    at org.apache.maven.report.projectinfo.dependencies.renderer.DependenciesRenderer.printArtifactsLocations(DependenciesRenderer.java:1311) 
    at org.apache.maven.report.projectinfo.dependencies.renderer.DependenciesRenderer.renderSectionDependencyRepositoryLocations(DependenciesRenderer.java:756) 
    at org.apache.maven.report.projectinfo.dependencies.renderer.DependenciesRenderer.renderBody(DependenciesRenderer.java:269) 
    at org.apache.maven.reporting.AbstractMavenReportRenderer.render(AbstractMavenReportRenderer.java:79) 
    at org.apache.maven.report.projectinfo.DependenciesReport.executeReport(DependenciesReport.java:186) 
    at org.apache.maven.reporting.AbstractMavenReport.generate(AbstractMavenReport.java:190) 
    at org.apache.maven.plugins.site.render.ReportDocumentRenderer.renderDocument(ReportDocumentRenderer.java:224) 
    at org.apache.maven.doxia.siterenderer.DefaultSiteRenderer.renderModule(DefaultSiteRenderer.java:311) 
    at org.apache.maven.doxia.siterenderer.DefaultSiteRenderer.render(DefaultSiteRenderer.java:129) 
    at org.apache.maven.plugins.site.render.SiteMojo.renderLocale(SiteMojo.java:182) 
    at org.apache.maven.plugins.site.render.SiteMojo.execute(SiteMojo.java:141) 
    at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:106) 
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:208) 
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:153) 
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:145) 
    at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:84) 
    at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:59) 
    at org.apache.maven.lifecycle.internal.LifecycleStarter.singleThreadedBuild(LifecycleStarter.java:183) 
    at org.apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.java:161) 
    at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:317) 
    at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:152) 
    at org.apache.maven.cli.MavenCli.execute(MavenCli.java:555) 
    at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:214) 
    at org.apache.maven.cli.MavenCli.main(MavenCli.java:158) 
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) 
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 
    at java.lang.reflect.Method.invoke(Method.java:606) 
    at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:289) 
    at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:229) 
    at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:415) 
    at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:356) 
http://maven.glassfish.org/content/groups/glassfish - Session: Disconnecting 
http://maven.glassfish.org/content/groups/glassfish - Session: Disconnected 
http://download.java.net/maven/2 - Session: Opened 
http://download.java.net/maven/2 - Session: Disconnecting 
http://download.java.net/maven/2 - Session: Disconnected 
http://download.java.net/maven/1 - Session: Opened 
http://download.java.net/maven/1 - Session: Disconnecting 
http://download.java.net/maven/1 - Session: Disconnected 
https://maven.java.net/content/groups/public - Session: Opened 
https://maven.java.net/content/groups/public - Session: Disconnecting 
https://maven.java.net/content/groups/public - Session: Disconnected 
http://repo.maven.apache.org/maven2 - Session: Opened 
http://repo.maven.apache.org/maven2 - Session: Disconnecting 
http://repo.maven.apache.org/maven2 - Session: Disconnected 
http://maven.glassfish.org/content/groups/glassfish - Session: Opened 

Odpowiedz

0

Jeśli zaznaczysz http://maven.glassfish.org/content/groups/glassfish lub http://maven.glassfish.org/content/groups/glassfish//com/google/guava/guava-jdk5/13.0/guava-jdk5-13.0.jar (z gadatliwym dzienniku) zobaczysz, że naprawdę nie ma żadnej treści (404).

Może być coś nie tak z konfiguracją twojego repozytorium w pom.xml. Można spróbować dodać repo1 przed innymi repozytoriami:

<repositories> 
    <repository> 
     <id>maven-central</id> 
     <url>http://repo1.maven.org/maven2</url> 
    </repository> 
    ... 
</repositories> 

Ponieważ większość z tych rzeczy jest w maven centralne repo tak, to może być to, że można usunąć wszystkie repozytoria z pom.xml (oprócz wiosennego repo, jeśli naprawdę używasz rzeczy wiosennych).

Zobacz także:

21

Trzeba będzie wyłączyć lokalizację zależność sprawdzenie poprzez dodanie <dependency.locations.enabled>false</dependency.locations.enabled> w sekcji Właściwości swojego pom.xml jak obok:

<properties> 
    ... 
    <dependency.locations.enabled>false</dependency.locations.enabled> 
</properties> 

Wartość domyślna to true Więcej szczegółów można znaleźć w parametrze dependencyLocationsEnabled .