Về phân tích trước đây của tôi, tôi đã hoàn toàn sai.
Tôi bỏ qua một điều quan trọng, phiên bản Java, không phải phiên bản mac os x. Tôi mới cài đặt thêm jdk 10 và tôi cũng có jdk 8 trong hệ thống của mình. Tất nhiên tôi đã đặt biến môi trường JAVA_HOME cho jdk 8 trong các tệp .bash_profile và .bashrc, tôi đã kiểm tra phiên bản java trong Terminal, đó là java 8, mọi thứ đều ổn.
Nhưng trong quá trình chạy tự động hóa, phiên bản java là 10
Thay đổi tập lệnh shell để nhận thông báo lỗi
RADIR=`ps x | grep jmeter | grep -v grep | cut -c 28- `
java -version > ~/log.jmeter 2>&1 &
COMMAND="$(dirname "$RADIR")/jmeter/bin/jmeter >> ~/log.jmeter 2>&1 &"
eval $COMMAND
log.jmeter:
phiên bản java "10.0.1" 2018-04-17
Môi trường thời gian chạy Java (TM) SE 18.3
(bản dựng 10.0.1 + 10)
Máy chủ 64-bit Java HotSpot (TM) VM 18.3 (bản dựng
10.0.1 + 10, chế độ hỗn hợp)
Lỗi: Phiên bản Java quá thấp để chạy JMeter. Cần ít nhất Java & gt; = 1.8.0.
Gì!!!! Đó là vấn đề ~~~
Thay đổi tập lệnh shell để sửa nó:
export JAVA_HOME="$(/usr/libexec/java_home -v 1.8)"
export PATH=$PATH:$JAVA_HOME/bin
RADIR=`ps x | grep jmeter | grep -v grep | cut -c 28- `
COMMAND="$(dirname "$RADIR")/jmeter/bin/jmeter > /dev/null 2>&1 &"
eval $COMMAND
Nó hoạt động tốt.
Vì vậy, có hai vấn đề trong vấn đề này:
- Jmeter không hỗ trợ jdk 10 (chờ cập nhật chính thức)
- Làm cách nào để đặt đúng biến môi trường java_home cho trình tự động?
jmeter
đã chạy, bạn đã thử mã hóa thư mụcjmeter
cư trú tạiCOMMAND
biến? Để khắc phục sự cố, bạn có thể xóa các chuyển hướng đến/dev/null
(> /dev/null 2>&1
) và xem tin nhắn nào được ghi lại.