meta veri bulunamadı, ve i işaret Projemin için çok basit bir .pom dosyası var:Yerel ı maven depoları ile yüklü bir Artifactory sahip makinede
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>MYGROUP</groupId>
<artifactId>NAME</artifactId>
<packaging>jar</packaging>
<version>VERSION</version>
<build>
<sourceDirectory>SRCFOLDER</sourceDirectory>
<testSourceDirectory>TESTFOLDER</testSourceDirectory>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>2.3.2</version>
<configuration>
<source>1.6</source>
<target>1.6</target>
</configuration>
</plugin>
</plugins>
</build>
<repositories>
<repository>
<id>local-artifactory</id>
<name>Artifactory</name>
<url>http://localhost:8081/artifactory/repo</url>
<layout>default</layout>
<releases>
<enabled>true</enabled>
<updatePolicy>always</updatePolicy>
<checksumPolicy>warn</checksumPolicy>
</releases>
<snapshots>
<enabled>true</enabled>
<updatePolicy>always</updatePolicy>
<checksumPolicy>warn</checksumPolicy>
</snapshots>
</repository>
</repositories>
<pluginRepositories>
<pluginRepository>
<id>local-artifactory-plugins</id>
<name>Artifactory Plugins</name>
<url>http://localhost:8081/artifactory/repo</url>
</pluginRepository>
</pluginRepositories>
<dependencies>
<dependency>
<groupId>MYGROUP</groupId>
<artifactId>DEPENDENCY1</artifactId>
<version>bla-SNAPSHOT</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>MYGROUP</groupId>
<artifactId>DEPENDENCY2</artifactId>
<version>bla-SNAPSHOT</version>
<scope>compile</scope>
</dependency>
</dependencies>
</project>
Yani ben yerel var -artifaryum deposu, her seferinde her şeyi yeniden yükleyeceği niyeti ile ilan etti. Ayrıca SNAPSHOTS olan birkaç bağımlılığım var.
Şimdi maven 3.0.5 kullanıyorum ve bunu derlerken iyi çalışıyor, ancak hiç fotoğraf çekmiyor. Asla. Hiç. Log dosyası şuna benzer:
[DEBUG] Could not find metadata MYGROUP:DEPENDENCY1:bla-SNAPSHOT/maven-metadata.xml in local (/opt/myuser/.m2/repository)
[DEBUG] Using connector WagonRepositoryConnector with priority 0 for http://localhost:8081/artifactory/repo
Downloading: http://localhost:8081/artifactory/repo/MYGROUP/DEPENDENCY1/bla-SNAPSHOT/maven-metadata.xml
Downloaded: http://localhost:8081/artifactory/repo/MYGROUP/DEPENDENCY1/bla-SNAPSHOT/maven-metadata.xml (314 B at 13.9 KB/sec)
[DEBUG] Writing resolution tracking file /opt/myuser/.m2/repository/MYGROUP/DEPENDENCY1/bla-SNAPSHOT/resolver-status.properties
[DEBUG] Could not find metadata MYGROUP:DEPENDENCY1:bla-SNAPSHOT/maven-metadata.xml in local (/opt/myuser/.m2/repository)
[DEBUG] Skipped remote update check for MYGROUP:DEPENDENCY1:bla-SNAPSHOT/maven-metadata.xml, already updated during this session.
Yani sürekli yerel maven-medatada.xml bulamıyorum şikayet ve tabii o tamamen doğru - orada değil. Ve bununla birlikte herhangi bir şey yapamaz.
Bu yüzden bağımlılığı kullanmaya çalıştım: yerel envanteri temizlemek için arındırılmış yerel deposu ve ne olduğunu tahmin edin? Görünüşe göre, her artefaktta maven-metadata.xml olmadığı, ne harika bir işlev olduğu için onu temizleyemez!
Her .m2 artifact dizini .jar ve .pom'dan ayrı olarak, maven-metadata-local-artifactory.xml (yapay, geçerli kaynaklardan maven-metadata.xml dosyasının doğru kopyasına sahip), _mave.repositories ve resolver- status.properties.
Maven kutudan çıktı, .m2 içinde bir yapılandırma yok ve/conf klasöründeki yapılandırma herhangi bir değişiklik yapmadan varsayılan değerdir.
GÜNCELLEME: Maven-metadata.xml dosyasını elle elle yükledim ve bir bağımlılık için maven-metadata.xml .m2 olarak yerleştirdim - etki yok, yine de "eksik". Artık benden ne istediği hakkında hiçbir fikrim yok. "Bu oturumda zaten güncellenmiş" olduğundan bağımlılıkları güncelleyemiyor. Tam olarak ne güncellendiğini bilmiyorum ama görünüşe göre başka bir şey.
Update2: sunucuda maven-metadata.xml İçeriği: maven meta xml itibaren
<metadata>
<groupId>MYGROUP</groupId>
<artifactId>DEPENDENCY1</artifactId>
<version>bla-SNAPSHOT</version>
<versioning>
<snapshot>
<buildNumber>1</buildNumber>
</snapshot>
<lastUpdated>20130322155759</lastUpdated>
</versioning>
</metadata>
Ellerinizi eserlerine nasıl koyuyorsunuz? mvn deploy'unu kullanıyor musunuz? – ben75
Hayır, ant/ivy ve ivy kullanıyorum: maven tarzı depo yapısı kullanarak yayınla. Önemli mi? – Eugene
Sanırım bu meta veriler orada yok. Maven eserini yapay olarak dağıtmak için asla ant/ivy kullanmıyorum. Her neyse: 'mvn deploy', yapay olarak jar + meta verileri koyacaktır ve gitmenin yolu. ('mvn install: install-file' ile de' -DpomFile = your-pom.xml' kullanabilirsiniz veya pom dosyası yoksa en kötüsü: '-DgeneratePom = true' – ben75