2013-11-28 21 views
10

Tôi gặp sự cố liên quan đến Java Builds trong Jenkins.Jenkins/Maven: Không thể giải quyết đường dẫn JAVA_HOME mặc định, Xây dựng không thành công

Các Lỗi Tôi quyết tâm là một sau:

Unable to locate the Javac Compiler in: C:\Jenkins\jre\..\lib\tools.jar Please ensure you are using JDK 1.4 or above and not a JRE (the com.sun.tools.javac.Main class is required). In most cases you can change the location of your Java installation by setting the JAVA_HOME environment variable.

tôi đã JDK1.6JDK1.7 dự án, vì vậy tôi cần hai cài đặt JDK. Đối với Java JDK mặc định của tôi, tôi đã sử dụng 1,6 cho biến số JAVA_HOME, trỏ đến C:\Program Files\Java\jdk1.6.0_45. Tương tự cho phiên bản 1.7, nhưng trong một biến riêng biệt (JAVA_HOME7). Biến số PATH chứa phụ đề \bin vào hai phiên bản JDK.

Trong Jenkins, tôi cũng đã thêm cả hai phiên bản cho JDK và dưới dạng biến trợ giúp. Nếu tôi đang thiết lập một phiên bản cụ thể cho một dự án (ví dụ: JDK1.7), thì đó là tòa nhà không có bất kỳ vấn đề nào. Thật không may tôi đã có rất nhiều dự án xây dựng, do đó, nó sẽ là tốn thời gian để thiết lập này bằng tay.

Tôi không hiểu nơi mà các cuộc gọi hoặc biến cho đường dẫn của lỗi C:\Jenkins\jre\..\lib\tools.jar được thiết lập và nơi tôi có thể sửa đổi nó ...

Version Jenkins: 1.509.4

Bất kỳ gợi ý hoặc lời khuyên Làm thế nào để giải quyết vấn đề này?

+1

Bạn nói bạn đặt biến JAVE_HOME. Đây có phải là một lỗi đánh máy trong bài viết của bạn hoặc bạn đã thực sự? (Phải là JAVA_HOME) –

+0

lỗi đánh máy, xin lỗi ... đã sửa nó trong bài gốc – mchlfchr

+0

Đây có thể là vấn đề quyền. Hãy chắc chắn rằng 'JAVA_HOME' là một trong hai hệ thống được thiết lập rộng hoặc cho người dùng chạy Jenkins. Nó có thể là bạn chỉ thiết lập nó cho người dùng hiện tại của bạn mà không chạy Jenkins. –

Trả lời

13

Tôi gặp phải cùng sự cố. Các bước dưới đây giải quyết vấn đề

1) Tới Quản lý Jenkins - Cấu hình hệ thống

2) Thêm JAVA_HOME và đường đi của nó trong toàn cầu Properties - Environment Variables

3) Thêm JDK và đường dẫn trong JDK phần

+2

Trong Jenkins 1.575, khi bạn thực hiện bướC# 3 * (thêm JDK) * nó sẽ nhắc bạn về đường dẫn 'JAVA_HOME', vì vậy bạn có thể bỏ qua bướC# 2 * (bỏ qua thêm thuộc tính Toàn cầu - Biến môi trường) *. .. bước 3 là vé, cảm ơn! – Damon

Các vấn đề liên quan