2013-10-22 56 views
15

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

gradle -version 

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

我使用的Java版本:

我使用下面的命令

sudo apt-get install gradle 

运行命令gradle -version当我得到一个错误安装gradle

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,但无济于事。

+0

您可以详细说明您如何安装Gradle? – Vidya

+0

也许尝试安装'libncurses5-dev';从我在网上找到的应该包含tgetent。 – blalasaadri

+0

我厌倦了这个没有运气 – user101010101

回答

1

我能够用Vidya的建议解决上述问题,手动向系统中添加gradle允许gradle正确工作。

+6

这是一种解决方法,而不是解决方法。 –

11

我已经为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 [email protected] $^ 

$(ODIR)/libnative-platform-curses.so: $(OBJ_CURSES) 
- $(CXX) $(CFLAGS) $(CXXFLAGS) $(CPPFLAGS) $(LDFLAGS) -lcurses -shared -o [email protected] $^ 
+ $(CXX) $(CFLAGS) $(CXXFLAGS) $(CPPFLAGS) $(LDFLAGS) -shared -o [email protected] $^ -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很旧。

+0

如何应用此修补程序?有什么指令吗? –

3

我与Ubuntu 13.10有同样的问题。自从现在发布14.04以来,您可能会考虑升级:Gradle在Ubuntu 14.04上完美运行。不过,我建议从自正式回购协议gradle website下载gradle这个仍然只有1.4的gradle

+1

我在Ubuntu 14上。04和[此错误不断发生](http://stackoverflow.com/questions/22307516/gradle-finds-wrong-java-home-even-though-its-correctly-set)。 – Water

1

/home/stens/src/jvm/java-1.8.0-openjdk-amd64/bin/java: symbol lookup error: /usr/lib/jni/libnative-platform-curses.so: undefined symbol: 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

+0

这打破了我的Gradle安装(至少)。也许这将是一个很好的知道哪个libnative-platform-jni版本下载。 –