我最近建立了自己的nexus存储库oss,但现在我正在努力使用它。
我配置了我的项目,以便bitbucket-pipelines在我将其推送到存储库后直接部署我的软件。这似乎有效:至少我可以看到我的项目,如果我浏览我的nexus存储库。
问题是:我的其他项目无法解决依赖关系。也许我在maven settings.xml或我的pom.xml本身中遗漏了一些东西?我不知道。
如果有人可以伸出援助之手,那会很好。
我将提供我的settings.xml和我的pom.xml - 请注意我用虚拟信息替换了我的真实服务器路径和其他一些信息。我希望这不会有问题。
首先是我的settings.xml
<?xml version="1.0" encoding="UTF-8"?> <settings xmlns="http://maven.apache.org/SETTINGS/1.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0http://maven.apache.org/xsd/settings-1.0.0.xsd"> <pluginGroups> </pluginGroups> <proxies> </proxies> <servers> <server> <id>nexus-snapshots</id> <username>dummy-user-name</username> <password>abc123!</password> </server> <server> <id>nexus-releases</id> <username>dummy-user-name</username> <password>abc123!</password> </server> </servers> <mirrors> --> <mirror> <id>nexus</id> <mirrorOf>*</mirrorOf> <url>http://dummy-server-url:8081/repository/maven-central/</url> </mirror> </mirrors> <profiles> <profile> <id>nexus</id> <repositories> <repository> <id>central</id> <url>http://central</url> <releases><enabled>true</enabled></releases> <snapshots><enabled>true</enabled></snapshots> </repository> </repositories> <pluginRepositories> <pluginRepository> <id>central</id> <url>http://central</url> <releases><enabled>true</enabled></releases> <snapshots><enabled>true</enabled></snapshots> </pluginRepository> </pluginRepositories> </profile> </profiles> <activeProfiles> <!--make the profile active all the time --> <activeProfile>nexus</activeProfile> </activeProfiles> </settings>
我的pom.xml
http://maven.apache.org/xsd/maven-4.0.0.xsd"> 4.0.0
<groupId>some.group.id</groupId> <artifactId>someArtifactID</artifactId> <version>1.0-SNAPSHOT</version> <properties> <maven.compiler.source>1.8</maven.compiler.source> <maven.compiler.target>1.8</maven.compiler.target> </properties> <dependencies> <dependency> <groupId>some.group.ide</groupId> <artifactId>Other</artifactId> <version>1.0-SNAPSHOT</version> </dependency> </dependencies> <!-- Konfiguration, welche den Pfad zum Nexus angibt. --> <distributionManagement> <snapshotRepository> <id>nexus-snapshots</id> <url>http://dummy-server-url.net:8081/repository/maven-snapshots/</url> </snapshotRepository> </distributionManagement> <build> <plugins> <!-- Das Standardplugin wird hier deaktiviert. Möglicherweise fehlt hier noch Version --> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-deploy-plugin</artifactId> <configuration> <skip>true</skip> </configuration> </plugin> <!-- Wir definieren hier das Nexus-Plugin--> <plugin> <groupId>org.sonatype.plugins</groupId> <artifactId>nexus-staging-maven-plugin</artifactId> <version>1.3</version> <executions> <execution> <id>default-deploy</id> <phase>deploy</phase> <goals> <goal>deploy</goal> </goals> </execution> </executions> <configuration> <serverId>nexus</serverId> <nexusUrl>http://dummy-server-url.net:8081/nexus/</nexusUrl> <skipStaging>true</skipStaging> </configuration> </plugin> <plugin> <artifactId>maven-compiler-plugin</artifactId> <version>3.1</version> <configuration> <source>1.8</source> <target>1.8</target> <verbose>true</verbose> <fork>true</fork> </configuration> </plugin> </plugins> </build> </project>
我的IntelliJ总是标记我的1.0-SNAPSHOT红色并告诉我,我将无法找到依赖项。 我的.m2目录中的resolver-status.properties-File告诉我
返回代码是:400,ReasonPhrase:存储库版本策略: RELEASE不允许路径中的元数据: 开发/ derektar /普通/ 1.0-SNAPSHOT /行家-metadata.xml中
我在互联网上搜索了一段时间,但我找不到解决方案。也许是因为我不是非常有经验管理自己的关系和建立与maven。直到几天前,我只需要开发软件,而不必关心这些事情。因此,如果有人可以帮助我,我会非常感激。
如果这是一个愚蠢的问题,我真的很抱歉。
亲切的问候。