Bản vá lỗi OpenJDK-8 / Oracle JDK 8 cho Ubuntu


8

Có phiên bản vá lỗi của OpenJDK-8 hoặc Oracle JDK 8 cho Ubuntu 14.10 để sửa các phông chữ xấu trong Ứng dụng Java (sản phẩm Jetbrains, Netbeans, v.v.) không?

Tôi trước đây đã cài đặt một phiên bản vá của OpenJDK7 cho Ubuntu 14.04 trong này bài viết, nhưng nó dường như không có sẵn cho 14.10. Tôi cũng không thể tìm thấy phiên bản vá cho OpenJDK8 / OracleJDK8.

Nếu có bất kỳ phiên bản vá hoặc bản vá nào cho OpenJDK8 / OracleJDK8 mà tôi có thể cài đặt, tôi thực sự sẽ đánh giá cao nếu có ai có thể chỉ ra.

Cảm ơn bạn.


Các phiên bản hiện đại của IntelliJ mang JVM của riêng họ. Nhiều khả năng có thể xử lý những thứ như thế này.
Thorbjørn Ravn Andersen

Câu trả lời:


9

Sau khi đọc các hướng dẫn khác nhau và làm rối tung với một loạt các bản sửa lỗi, tôi đã tìm thấy một cách hoạt động hoàn hảo.

Trước hết hãy tải xuống JDK 8 từ Oracle và thực hiện các dòng sau trong thiết bị đầu cuối:

cd Downloads
tar -xvf jdk-8u25-linux-x64.tar.gz
rm jdk-8u25-linux-x64.tar.gz
sudo mkdir -p /usr/lib/jvm/
sudo mv jdk1.8.0_25 /usr/lib/jvm/

Bây giờ hãy tải xuống bản sửa lỗi phông chữ JDK (Courtesy of Urshulyak Yaroslav ) bằng cách thực hiện như sau:

cd ~/Downloads
wget http://urshulyak.com/jdk-8u5-tuxjdk-b08.tar.gz
tar -xvf jdk-8u5-tuxjdk-b08.tar.gz
sudo mv jdk-8u5-tuxjdk-b08 /usr/lib/jvm
rm jdk-8u5-tuxjdk-b08.tar.gz

Điều này sẽ trích xuất zip đã tải xuống và di chuyển nó đến / usr / lib / jvm /. Bây giờ chạy như sau trong thiết bị đầu cuối:

cd ~
sudo gedit .bashrc

Sau đó thêm các dòng sau vào dưới cùng của tệp bashrc.

JAVA_HOME=/usr/lib/jvm/jdk1.8.0_25/
export JAVA_HOME

Lưu nó sau đó gedit ý tưởng.sh. (Vị trí tập lệnh của bạn có thể khác)

gedit /home/USER/Downloads/idea/bin/idea.sh

Ở dưới cùng của tập lệnh thay thế (các) dòng trong câu lệnh While Do ở dưới cùng bằng hai dòng này:

eval "/usr/lib/jvm/jdk-8u5-tuxjdk-b08/bin/java" $ALL_JVM_ARGS -Djb.restart.code=88 $MAIN_CLASS_NAME "$@"
test $? -ne 88 && break

Lưu nó sau đó mở IntelliJ, các phông chữ sẽ hoạt động và bạn sẽ sử dụng Oracle JDK 8 để phát triển. Bạn có thể sẽ phải chỉnh sửa Cài đặt dự án và thiết lập lại JDK của mình nhưng hãy chắc chắn sử dụng JDK thực tế chứ không phải sửa lỗi phông chữ.

Khắc phục sự cố này cũng hoạt động với CLion , Android StudioPyCharm .

Các hướng dẫn này giả sử phiên bản JDK là 1.8.0_25, tên tệp / đường dẫn sẽ thay đổi cho các phiên bản trong tương lai.


Cảm ơn bạn đã trả lời chi tiết. Tôi đã thử giải pháp của bạn, nhưng phông chữ của tôi trở nên lớn hơn và táo bạo hơn. Tôi có thể giảm kích thước phông chữ, nhưng không thể thay đổi phông chữ đậm thành bình thường.
Deepal

Vâng, kích thước được tăng lên, đến 14 (tôi đã thay đổi thành 11) nhưng phông chữ của tôi không đậm? Tôi giả sử bạn đã thử các phông chữ khác để xem chúng có còn đậm không?

Yup. Không phải tất cả các phông chữ đều được in đậm. Phông chữ tôi hiện đang sử dụng trở nên đậm. Tôi nghĩ rằng tôi có thể phải sống với điều đó. Có cách nào giải pháp này có thể được áp dụng cho tất cả các ứng dụng java ngoài việc sửa đổi các tệp thực thi của chúng không? Tôi có nghĩa là để các tập tin jar là tốt? Tôi không thể sử dụng jdk đã vá này làm jdk mặc định của mình phải không?
Deepal

1
Xin lỗi tôi không thể giúp với các phông chữ đậm. Bạn có thể thử tải xuống một bản sao khác của phông chữ, đáng để thử nếu nó làm phiền bạn nhiều như vậy. Bạn có thể thử làm rối với sửa lỗi phông chữ, tôi đã gặp một số vấn đề khi sử dụng nó làm JDK của mình, bạn có thể thử tải xuống openJDK đầy đủ và hợp nhất hai, có thể hoạt động.

3
@Deepal Hãy chắc chắn rằng bạn cũng đang thiết lập export _JAVA_OPTIONS="-Dawt.useSystemAAFontSettings=lcd -Dsun.java2d.xrender=true"trong bashrc của mình
Salem

1

Để làm cho DanielSteward anwser hoàn thành:

Thật không may tuxjdkcho giao diện GTK sử dụng bộ phông chữ trong gtkrc hiện đang được sử dụng. Nhưng hầu hết các chủ đề không đặt bất kỳ phông chữ nào ở đó. Do đó, netbeans sẽ sử dụng Arial 15 in đậm làm phông chữ UI.

Để sửa lỗi đó, hãy tạo gtkrc chỉ cho netbeans có phông chữ cố định và báo cho netbeans sử dụng tệp này.

Tôi đã chuẩn bị launcher đặc biệt thực hiện việc bán tự động này:

#! / bin / bash

### Biến tùy chỉnh: ###

# Đường dẫn nơi netbeans được cài đặt
NETBEANS_PATH = $ {NETBEANS_PATH: - ~ / opt / netbeans-dev-2015-06-04} / bin / netbeans
# Tên môi trường máy tính để bàn để sử dụng kiểu từ
USED_DE = $ {USED_DE: -mate}
# Tuxjdk dường như hiển thị phông chữ UI quá lớn, vì vậy hãy sử dụng giá trị này để giảm chúng
FONT_SUBTRAHENT = $ {FONT_SUBTRAHENT: -3}

#################################

hàm remQuotes () {
  tiếng vang "$ {@ // \ '/}"
}

hàm giảmFontSize () {
  phụ đề cục bộ = $ 1; ca
  đối số cục bộ = "$ @"
  echo $ {args // [0-9] /} $ (($ {args // [! 0-9] /} - $ Subrahend))
}

theme = $ (remQuotes `gsinstall get org. $ {USED_DE} .interface gtk-theme`)
font = $ (remQuotes `gsinstall get org. $ {USED_DE} .interface font-name`)
font = $ (giảmFontSize $ FONT_SUBTRAHENT $ font)

themeDirs = $ (tìm ~ / .theme / / usr / share / Themes / -type d -name "$ {theme}")
gtkRcPath = ""
cho thư mục trong "$ themeDirs"; làm
  if [[-f "$ dir / gtk-2.0 / gtkrc"]]; sau đó
    gtkRcPath = "$ dir / gtk-2.0 / gtkrc"
    phá vỡ;
  fi
làm xong

if [["$ gtkRcPath" == ""]]; sau đó
  echo "Không tìm thấy chủ đề"> / dev / stderr
  ./$NETBEANS_PATH $ @
fi

mèo $ HOME / .netbeans / .gtkrc-2.0
bao gồm "$ gtkRcPath"

kiểu "phông chữ người dùng" {
    font_name = "$ font"
}

widget_group "*" kiểu "phông chữ người dùng"

gtk-font-name = "$ font"

EOF

GTK2_RC_FILES = ~ / .netbeans / .gtkrc-2.0 $ NETBEANS_PATH $ @

Điều này sẽ đọc cài đặt chủ đề của bạn và tạo chủ đề giả chỉ dành cho netbeans. Bạn phải điều chỉnh NETBEANS_PATHUSED_DEbiến cho môi trường của bạn.


0

Tôi đã xây dựng Openjdk 8u40 trên các bản vá tuxjdk của riêng mình và được áp dụng. Hơn nữa, tôi đã phải tạo ra một tập tin gọi local.conftrong /etc/fonts/để fontmap override java cho phông chữ logic của nó thích Dialog, Monospacedvv Sau đó, Swing ứng dụng dựa trên cải thiện rất nhiều. Hãy xem TẠI ĐÂY .


0

Hiện tại, chỉ có các gói vòng / phút cho tuxjdk: http://doad.opensuse.org/repose khu / home: / TheInifferent: / tuxjdk /

Tôi cần thêm ít thời gian để tìm hiểu về bao bì debian và chuẩn bị các gói phù hợp, cộng với tài liệu một số tính năng thú vị của phiên bản 03 của tuxjdk. Vì vậy, hãy theo dõi và vui lòng báo cáo bất kỳ vấn đề nào bạn gặp phải với tuxjdk tới https://github.com/TheIndifferent/tuxjdk , vì vậy tôi sẽ có thể sao chép và (hy vọng) khắc phục chúng.


0

Trên thực tế, bạn không cần phải bận tâm sửa đổi idea.sh, điều này không ổn định trong các bản cập nhật. Có một tệp cấu hình dành riêng cho người dùng, ~/.IntelliJIdea2016.1/config/idea.jdk(cách đặt tên thay đổi tương ứng), lưu trữ JDK khởi động.

Tài liệu tham khảo chính thức:

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.