小编Jon*_*son的帖子

为什么sumBy(selector)不返回Long?

sumBy(selector)返回Int

sumByDouble(selector)返回Double

为什么sumBy不返回Long?这有解决方法吗?

kotlin

14
推荐指数
3
解决办法
2698
查看次数

编写一个可以发布的buildSrc Gradle插件

我正在为我的公司编写一个自定义 Gradle 插件,以协助我们产品的集成测试。我的团队希望在主产品构建中构建和使用插件(就像“buildSrc”插件一样),但也需要将插件作为工件发布,供其他团队与我们的产品集成使用。

如果我尝试将它作为独立插件包含在settings.gradle文件中,然后将它作为依赖项包含在 buildscript 中,它显然不起作用,因为首先解释 buildscript 块。

我还尝试从构建脚本中运行另一个构建,如下所示:

buildscript {
  def connection = GradleConnector.newConnector()
    .forProjectDirectory(file("${project.projectDir}/theplugin"))
    .connect()

  try {
    connection.newBuild()
      .forTasks('clean', 'build', 'install')
      .run()
  } finally {
    connection.close()
  }

  repositories {
    mavenLocal()
    ...
  }

  dependencies {
    classpath 'com.company.product.gradle.theplugin'
  }
}
Run Code Online (Sandbox Code Playgroud)

这会导致插件被构建并放置在本地 Maven 存储库中,但随后初始 Gradle 构建直接失败,因为它无法解析新构建的存档。如果我再次运行它,它会起作用。我不明白这种行为。

我可能会用这种方法陷入困境。有没有办法以一种不那么“hacky”的方式来完成这项工作?

plugins gradle

8
推荐指数
1
解决办法
1353
查看次数

连接表记录删除时的参照完整性约束违规

我在用户和组之间有多对多的关系.

@Entity
class User {
    @OneToMany(cascade = CascadeType.ALL, mappedBy = 'id.user')
    Set<GroupMembership> memberships
}

@Entity
class Group {
    @OneToMany(cascade = CascadeType.ALL, mappedBy = 'id.group')
    Set<GroupMembership> members
}

@Entity
class GroupMembership {

    @Embeddable
    static class IdKey implements Serializable {

        @ManyToOne
        @JoinColumn(name = 'userId')
        User user

        @ManyToOne
        @JoinColumn(name = 'groupId')
        Group group
    }

    @EmbeddedId
    IdKey id = new IdKey()
}
Run Code Online (Sandbox Code Playgroud)

我希望能够删除用户或组,并删除任何关联的GroupMembership.但是,当我尝试删除用户或组时,我得到一个:

org.h2.jdbc.JdbcSQLException: Referential integrity constraint violation: "FK_96K9TDEV9PO6Q3ISOYIJPWAQU: PUBLIC.GROUP_MEMBERSHIPS FOREIGN KEY(GROUP_ID) REFERENCES PUBLIC.GROUP(ID) (1)"; SQL statement:
delete from group where id=? [23503-186]
Run Code Online (Sandbox Code Playgroud)

我正在使用Hibernate …

hibernate jpa spring-data-jpa

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

标签 统计

gradle ×1

hibernate ×1

jpa ×1

kotlin ×1

plugins ×1

spring-data-jpa ×1