正在读取文档。deploy:deploy-file
(https://maven.apache.org/plugins/maven-deploy-plugin/deploy-file-mojo.html),似乎唯一需要的参数是所需参数CCD_ 2,然而,当我运行时:
mvn deploy:deploy-file -Durl={url} -DrepositoryId={repoId} -Dfile=D:UsersnunitoIdeaProjectscalzadatargetcalzada.zip
我得到了这个错误:
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-deploy-plugin:2.8.2:deploy-file (default-cli) on project oib-kw-guards-web: The artifact i
nformation is incomplete or not valid:
[ERROR] [0] 'groupId' is missing.
[ERROR] [1] 'artifactId' is missing.
[ERROR] [2] 'version' is missing.
当我有一个没有pom.xml
:的第三方工件时,我通常在命令行中使用deploy:deploy-file
cmd /v /c "set a=an-artifact-name&& set g=com.company.xxx&&
mvn deploy:deploy-file -Dfile=C:pathto!a!.jar -Dpackaging=jar -DgroupId=!g! -DartifactId=!a!
-Dversion=1.0-DEV-SNAPSHOT -DrepositoryId=nexus
-Durl=http://company.com/nexus/content/repositories/company-snapshots/"
您所需要做的就是在命令的开头修改a
和g
。
如果你有一个特定的版本,你可以添加一个版本v,并将其放在你的Nexus:的发布部分
cmd /v /c "set a=an-artifact-name&& set g=com.company.xxx&& && set v=1.2.3&&
mvn deploy:deploy-file -Dfile=C:pathto!a!.jar -Dpackaging=jar -DgroupId=!g! -DartifactId=!a!
-Dversion=!v! -DrepositoryId=nexus
-Durl=http://company.com/nexus/content/repositories/company-releases/"
插件"用法";第页(https://maven.apache.org/plugins/maven-deploy-plugin/usage.html)状态:
如果没有以某种方式指定以下所需信息,目标将失败:
- 要部署的工件文件
- 要部署的文件的组、工件、版本和打包。这些可以从指定的pomFile中获取,并使用命令行覆盖或指定。当pomFile包含父节时,如果没有为当前项目或在命令行中进一步指定groupId,则可以考虑父节的groupId
- 存储库信息:settings.xml文件中要部署到的url和映射到服务器部分的repositoryId。如果您没有指定repositoryId,Maven将尝试使用id"remoterepository"提取身份验证信息
因此,您需要指定坐标或提供一个POM文件。