簡體   English   中英

將.jar文件上傳到遠程存儲庫

[英]Uploading a .jar file to a remote repository

這個問題與有關。 將.jar文件上傳到此網站時遇到很多麻煩。 按照此處此處描述的文檔步驟,我創建了一個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文件是否已上傳。 加載一個利用它的不同項目表明事實並非如此。 閱讀文檔頁面

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自身功能的插件。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM