小编Dan*_*ini的帖子

收集要安装的项目时发生错误:osgi.bundle,org.eclipse.sdk,4.2.0.v201206081400

我正在尝试将Xtext项目导出为Eclipse产品.如果从Eclipse内部启动,启动配置可以完美运行,但我无法将其导出以生成自包含产品.我明白了:

收集要安装的项目会话上下文时发生错误:(profile = profile,phase = org.eclipse.equinox.internal.p2.engine.phases.Collect,operand =,action =).下载工件的问题:osgi.bundle,org.eclipse.sdk,4.2.0.v201206081400.

org.eclipse.sdk-4.2.0.v201206081400已作为工作区中的项目导入.我正在尝试使用"所有工作区和启用的目标插件"导出,而不是逐个选择插件.

我在Linux 64bit(Sabayon).

eclipse eclipse-plugin xtext eclipse-juno

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

以编程方式获取当前 Gradle 版本支持的最新 Java 版本

我目前的问题如下:我希望能够检测出哪个是我目前用于构建某个项目的 Gradle 版本的最新官方支持的Java 版本。我找不到相应的 API,GradleVersion没有提供有关最大支持的 Java 工具链的信息。我找到信息的唯一地方是在 Javadoc 文档中JavaVersion.java

...
    /**
     * Java 16 major version.
     *
     * @since 6.3
     */
    VERSION_16,

    /**
     * Java 17 major version.
     * Not officially supported by Gradle. Use at your own risk.
     *
     * @since 6.3
     */
    VERSION_17,
...
Run Code Online (Sandbox Code Playgroud)

尚未支持的版本有Not officially supported by Gradle. Use at your own risk.一行,但以这种方式检测最大支持的版本对于我的范围来说太脆弱了。

换句话说,我希望能够编写以下 Kotlin 扩展函数:

/**
  * Returns 16 for Gradle 7.2, Returns …
Run Code Online (Sandbox Code Playgroud)

java automation build gradle kotlin

5
推荐指数
0
解决办法
59
查看次数

发布时使用 Gradle 忽略 409 错误

我配置了 Gradle 以将插件发布到 GitHub 包。当运行相应的任务时,我收到(合法的)409,因为我尝试推送相同的工件两次。显然,没有办法将 GitHub 包配置为接受覆盖,所以我想知道是否可以告诉 Gradle 忽略 409 错误并继续处理下一个文件。

我查看了API,但找不到任何有用的东西。

java github gradle maven http-status-code-409

5
推荐指数
0
解决办法
392
查看次数

有没有办法告诉Gradle在生成的Javadocs中包含依赖项Javadoc?

我有一个Java项目,我正在使用Gradle管理.这样的项目将由多个彼此独立开发的小型库组成,以及一个"叶子"项目,其目标只是依赖于每个库的最新稳定版本,将所有内容打包在一个胖罐中并提供汇总文档.

每个库都将作为单独的工件上载到Maven Central.

为了测试这种配置的可行性,我写了一个非常简单的项目,它取决于GNU Trove4j.我希望能够为这个项目生成一个包含我的源代码和Trove4j代码的Javadoc,但到目前为止我还没有成功.

我的想法是从Central中导入依赖项的源代码作为Gradle的sourceSet的一部分,但我不知道如何去做.

java groovy javadoc gradle build.gradle

3
推荐指数
1
解决办法
2976
查看次数

Kotlin 将 List<Triple<String, String, String> 变异为 Triple<List<String>, List<String>, List<String>> 的优雅方式

我想尽可能简洁地(但清楚地)将 a 转换List<Triple<String, String, String>为 a Triple<List<String>, List<String>, List<String>>

例如,假设执行转换的方法被调用turnOver,我希望:

val matches = listOf(
  Triple("a", "1", "foo"),
  Triple("b", "2", "bar"),
  Triple("c", "3", "baz"),
  Triple("d", "4", "qux")
)
val expected = Triple(
  listOf("a", "b", "c", "d"),
  listOf("1", "2", "3", "4"),
  listOf("foo", "bar", "baz", "qux")
)
matches.turnOver() == expected // true
Run Code Online (Sandbox Code Playgroud)

如何编写简洁、清晰且可能具有turnOver功能性的函数?

可以使用 Arrow-Kt,我已经将其作为项目依赖项。

monads functional-programming monad-transformers kotlin arrow-kt

3
推荐指数
1
解决办法
452
查看次数

如何为 JVM 目标编译扩展类的 Scala 特征?

我从这个问题中知道 Scala 为trait诸如

trait A {
  def a = { ... }
}
Run Code Online (Sandbox Code Playgroud)

类似于以下 Java 代码的结构

public interface A {
  public void a();
}
public class A$class {
  public static void a(A self) { ... }
}
Run Code Online (Sandbox Code Playgroud)

但是,在 Scala 中, atrait可以扩展 a class

class B {
  def b = { ??? }
}
trait A extends B {
  def a = { ??? }
}
Run Code Online (Sandbox Code Playgroud)

这在 Java 等价物中如何翻译,其中接口不能从类继承?是否为 生成了额外的接口B?这个 Scala 特性对 …

java inheritance scala bytecode subtyping

3
推荐指数
1
解决办法
58
查看次数

git 显然一直说文件已被修改,但实际上尚未修改

我遇到了一个奇怪的情况,\n可能与这个问题有关,\n但我想更好地了解这里发生的情况。

\n

我有一个存储库,在克隆后立即git status报告文件已被修改。

\n

我在这里创建了一个最小的复制品,\n其中包含一个仅包含忽略列表的存储库,这.gitattributes是一个非常琐碎的文件,\n以及导致我头疼的文件:gradlew.bat

\n

我在下面的所有尝试都是使用 Linux/ZSH 执行的(该问题已在多个 Linux 安装和 shell 上重现)。

\n

在克隆之后,如果我运行git status,我会得到:

\n
\xe2\x9d\xaf git status\nOn branch master\nYour branch is up to date with \'origin/master\'.\n\nChanges not staged for commit:\n  (use "git add <file>..." to update what will be committed)\n  (use "git restore <file>..." to discard changes in working directory)\n        modified:   gradlew.bat\n\nno changes added to commit (use "git add" and/or "git commit -a")\n
Run Code Online (Sandbox Code Playgroud)\n

如果我尝试使用 …

git repository line-endings

2
推荐指数
1
解决办法
1551
查看次数