gpt4 book ai didi

java - 将 .jar 文件上传到远程存储库

转载 作者:太空宇宙 更新时间:2023-11-04 13:38:26 26 4
gpt4 key购买 nike

此问题与 this 相关一。我在将 .jar 文件上传到 this 时遇到很多麻烦地点。按照描述的文档步骤 herehere我创建了一个 build.gradle 文件:

// First, apply the publishing plugin
buildscript {
repositories {
maven {
url "https://plugins.gradle.org/m2/"
}
}
dependencies {
classpath "com.gradle.publish:plugin-publish-plugin:0.9.1"
}
}

apply plugin: "com.gradle.plugin-publish"
// Apply other plugins here, e.g. java plugin for a plugin written in java or
// the groovy plugin for a plugin written in groovy
apply plugin: "java"
// If your plugin has any external java dependencies, Gradle will attempt to
// downloaded them from JCenter for anyone using the plugins DSL
// so you should probably use JCenter for dependency resolution in your own
// project.
repositories {
jcenter()
}

dependencies {
compile gradleApi()
compile localGroovy() //not needed for Java plugins
// other dependencies that your plugin requires
compile fileTree(dir: "/usr/local/bin", include: ["*.jar"])
compile fileTree(dir: "/usr/lib/jvm/java-8-jdk/jre/lib/", include: ["*.jar"])
compile fileTree(dir: "/home/kiara/AppLab/KIARA/kiaragen/lib/", include: ["*.jar"])
}

pluginBundle {
// These settings are set for the whole plugin bundle
website = 'http://www.gradle.org/'
vcsUrl = 'https://github.com/gradle/gradle'

// tags and description can be set for the whole bundle here, but can also
// be set / overridden in the config for specific plugins
description = 'kiaragen version 0.1.0'
version = '0.1.0'

// The plugins block can contain multiple plugin entries.
//
// The name for each plugin block below (greetingsPlugin, goodbyePlugin)
// does not affect the plugin configuration, but they need to be unique
// for each plugin.

// Plugin config blocks can set the id, displayName, version, description
// and tags for each plugin.

// id and displayName are mandatory.
// If no version is set, the project version will be used.
// If no tags or description are set, the tags or description from the
// pluginBundle block will be used, but they must be set in one of the
// two places.

plugins {
kiaragenPlugin {
id = 'org.fiware.kiara.generator.kiaragen'
displayName = 'kiaragen 0.1.0'
tags = ['kiaragen', 'IDL', 'code', 'generator']
version = '0.1.0'
}
}
}

包含该文件的项目目录还包含 .jar 文件:

$ ls
build build.gradle build.gradle.bak kiaragen-0.1.0.jar kiaragen-0.2.0.jar META-INF

META-INF/gradle-plugins/org.fiware.kiara.generator.kiaragen.properties 包含主类的名称:

Manifest-Version: 1.0
Main-Class: org.fiware.kiara.generator.kiaragen

我需要上传的.jar文件是kiaragen-0.1.0.jar,它的依赖项位于:

/home/kiara/AppLab/KIARA/kiaragen/lib/

运行:

$ gradle publishPluginJar
:publishPluginJar UP-TO-DATE

BUILD SUCCESSFUL

Total time: 4.435 secs

This build could be faster, please consider using the Gradle Daemon: http://gradle.org/docs/2.4/userguide/gradle_daemon.html

使用 --info 标志运行会给出:

$ gradle publishPluginJar --info
Starting Build
Settings evaluated using settings file '/master/settings.gradle'.
Projects loaded. Root project using build file '/home/kiara/AppLab/KIARA/Uploadkiaragen/build.gradle'.
Included projects: [root project 'Uploadkiaragen']
Evaluating root project 'Uploadkiaragen' using build file '/home/kiara/AppLab/KIARA/Uploadkiaragen/build.gradle'.
All projects evaluated.
Selected primary task 'publishPluginJar' from project :
Tasks to be executed: [task ':publishPluginJar']
:publishPluginJar (Thread[main,5,main]) started.
:publishPluginJar
Skipping task ':publishPluginJar' as it is up-to-date (took 0.086 secs).
:publishPluginJar UP-TO-DATE
:publishPluginJar (Thread[main,5,main]) completed. Took 0.148 secs.

BUILD SUCCESSFUL

Total time: 4.792 secs
Stopped 0 compiler daemon(s).

This build could be faster, please consider using the Gradle Daemon: http://gradle.org/docs/2.4/userguide/gradle_daemon.html

问题是我不确定 .jar 文件是否已上传。加载一个使用它的不同项目表明它不是。阅读文档 page :

Some plugins require manual acceptance by the Plugin Portal maintainers, and will not be made available immediately when they are published. This is only the case when you have specified a custom “group ID” for your plugin artifact. The plugin publishing plugin will tell you if your plugin is pending acceptance when you publish.

If your plugin requires changes before it can be accepted, you will be contacted via the email address associated with your account. You will also receive an email when your plugin is accepted.

当我发布时,“插件发布插件”如何告诉我我的插件是否正在等待接受?

最佳答案

看来plugins.gradle.com仅适用于扩展 gradle 本身功能的插件。

关于java - 将 .jar 文件上传到远程存储库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31456926/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com