2013-10-22 57 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版本下載。 –