相关疑难解决方法(0)

使用Gradle创建可运行的JAR

到目前为止,我通过Eclipse"Export ..."功能创建了可运行的JAR文件,但现在我切换到IntelliJ IDEA和Gradle进行构建自动化.

这里的一些文章提出了"应用程序"插件,但这并不完全导致我期望的结果(只是一个JAR,没有启动脚本或类似的东西).

如何通过Eclipse"Export ..."对话框实现相同的结果?

java jar gradle

128
推荐指数
8
解决办法
15万
查看次数

使用Gradle构建具有依赖关系的jar

我有一个多项目构建,我在一个子项目中设置了一个任务来构建一个胖罐.我创建的任务类似于食谱中描述的任务.

jar {
  from configurations.compile.collect { it.isDirectory() ? it : zipTree(it) }
  manifest { attributes 'Main-Class': 'com.benmccann.gradle.test.WebServer' }
}
Run Code Online (Sandbox Code Playgroud)

运行它会导致以下错误:

原因:您无法更改未处于未解决状态的配置!

我不确定这个错误意味着什么.我还在Gradle JIRA上报告了这个问题,以防它出现问题.

uberjar gradle

108
推荐指数
9
解决办法
12万
查看次数

Android Studio使用另一个AAR文件和jar内部创建AAR

我正在使用另一个aar和jar文件依赖项创建AAR文件.我已成功创建.aar发布文件.

然后,我将新的AAR文件导入到示例项目中.该项目运行良好.当要访问aar和jar类时,它显示NoClassDefFound错误.

注意:首先我想知道,截至目前,另一个AAR中的AAR是否可行.任何人都可以帮助我摆脱这个新事物的问题吗?

我提到这个链接也创建了一个包含多个AAR/JAR的AAR.它说传递=真.但是,不明白,在哪里使用那个标志.在第三方使用Application或在AAR项目依赖项中创建AAR.

谢谢提前.

我的迷你项目Gradle文件:

Mini Project,只转换为.AAR文件.那么,这个文件只会使用另一个NewProject

Mini Project Build.gradle文件

/*
This would be enabled for development purpose and to debug and check the same
*/

apply plugin: 'com.android.application'

/*
This would be enabled for exporting as aar file
apply plugin: 'com.android.library'
*/

//apply plugin: 'com.android.library'

android {

    compileSdkVersion 23
    buildToolsVersion "23.0.2"

    dexOptions {
        javaMaxHeapSize "4g"
        preDexLibraries = false
    }
    defaultConfig {

        /*
        This application id would be used for development purpose and to debug …
Run Code Online (Sandbox Code Playgroud)

android android-library aar android-studio-2.1

8
推荐指数
2
解决办法
6790
查看次数

Gradle Jar将Vue包装到Spark中

我将Vue UI与Spark Java后端捆绑在一起。
这两个模块都是独立构建的,可以通过以下结构正常工作:

  project
  +-- backend
  |   +-- src
  |   |   +-- main
  |   |       +-- resources
  |   |           +-- public <= Where the jar is picking the static files
  |   +-- build
  |       +-- libs <= Gradle Jar output
  +-- ui
      +-- dist <= Vue build output
Run Code Online (Sandbox Code Playgroud)

在后端,Gradle捆绑backend/src/main/resources/public到Jar中/public。因此,我从复制ui/distbackend/src/main/resources/public作为jar任务依赖项。

  task copyUI(type: Copy) {
      from( '../ui/dist')
      into( 'src/main/resources/public')
  }

  jar.dependsOn( copyUI)
Run Code Online (Sandbox Code Playgroud)

Gradle正在复制文件,但是创建jar之后。
换句话说,我必须创建两次jar才能正确。

我如何指示Gradle在包装/ public前等待复制完成

我的build.gradle罐子部分看起来像这样 …

packaging gradle vue.js spark-framework

5
推荐指数
1
解决办法
413
查看次数