【问题标题】:Running Gradle on Ubuntu 13.10在 Ubuntu 13.10 上运行 Gradle
【发布时间】:2013-10-31 13:38:30
【问题描述】:

我在 ubuntu 13.10 上运行 gradle 时遇到问题,我认为这是问题的根源。

我使用以下命令安装了gradle

sudo apt-get install gradle

运行命令gradle -version时出现错误:

gradle -version

/usr/lib/jvm/default-java/bin/java: symbol lookup error: /usr/lib/jni/libnative-platform-curses.so: undefined symbol: tgetent

我使用的是java版本:

java version "1.7.0_25"
OpenJDK Runtime Environment (IcedTea 2.3.12) (7u25-2.3.12-4ubuntu3)
OpenJDK 64-Bit Server VM (build 23.7-b01, mixed mode)

我不知道还能做什么。我尝试了不同版本的java,但无济于事。

【问题讨论】:

  • 您能详细说明一下您是如何安装 Gradle 的吗?
  • 也许尝试安装libncurses5-dev;从我在网上找到的应该包含 tgetent 的内容。
  • @Vidya 我已经添加了我上面使用的命令
  • 嗯...也许ncurses-term 和/或libterm-query-perl 会有所帮助?
  • 从来没有用 apt-get 做过。我只是手动下载并解压缩。然后我将目录定义为 GRADLE_HOME 并将其添加到我的 PATH 中。 gradle.org/downloads

标签: java ubuntu gradle


【解决方案1】:

我已经为 libnative-platform-jni 的 Makefile 提供了补丁。

sudo apt-get build-dep libnative-platform-java
apt-get source libnative-platform-java
cd libnative-platform-java-0.3~rc2/

应用此补丁:

--- Makefile.orig   2013-11-20 10:42:54.599476939 -0800
+++ Makefile    2013-11-20 10:43:04.879476606 -0800
@@ -28,7 +28,7 @@
  $(CXX) $(CFLAGS) $(CXXFLAGS) $(CPPFLAGS) $(LDFLAGS) -shared -o $@ $^

 $(ODIR)/libnative-platform-curses.so: $(OBJ_CURSES)
-   $(CXX) $(CFLAGS) $(CXXFLAGS) $(CPPFLAGS) $(LDFLAGS) -lcurses -shared -o $@ $^
+   $(CXX) $(CFLAGS) $(CXXFLAGS) $(CPPFLAGS) $(LDFLAGS) -shared -o $@ $^ -lcurses

 $(JCLASSESDIR)/%.class: javafiles-list
  mkdir -p $(JCLASSESDIR)

运行:

dpkg-source --commit
dpkg-buildpackage
cd ..
sudo dpkg -i libnative-platform-jni_0.3~rc2-2_amd64.deb

测试

gradle -v

在这里查看我的评论:https://bugs.launchpad.net/ubuntu/+source/gradle/+bug/1238322/comments/4

更新: 您可能想在这里查看 ppa https://launchpad.net/~cwchien/+archive/gradle,因为 gradle 1.4 已经很老了。

【讨论】:

    【解决方案2】:

    我在 Ubuntu 13.10 上遇到了同样的问题。由于现在已经发布了 14.04,您可能会考虑升级:Gradle 在Ubuntu 14.04 上完美运行。但是,我建议从gradle website 下载 gradle,因为官方 repos 仍然只有 gradle 1.4

    【讨论】:

    【解决方案3】:

    /home/stens/src/jvm/java-1.8.0-openjdk-amd64/bin/java:符号查找错误:/usr/lib/jni/libnative-platform-curses.so:未定义符号:tgetent

    这是我发现的最简单的解决方法...在此处下载 deb

    https://packages.debian.org/sid/amd64/libnative-platform-jni/download

    然后使用安装

    sudo dpkg -i libnative-platform-jni_0.11-5_amd64.deb 
    

    现在 gradle 工作... Ubuntu 17.10

    【讨论】:

    • 这破坏了我的 Gradle 安装(至少)。也许知道要下载哪个 libnative-platform-jni 版本会很好。
    【解决方案4】:

    根据 Vidya 的建议,我能够解决上述问题,手动将 gradle 添加到系统中允许 gradle 正常工作。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-02-09
      • 2014-02-07
      • 2014-03-09
      • 2013-11-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多