Làm cách nào để đặt vĩnh viễn các biến môi trường PATH và M2_HOME trong ubfox cho maven3?


30

Tôi đã tải xuống tệp apache-maven3.zip mới nhất và giải nén nó vào thư mục : /home/gaurav/Java/maven3.

Tôi không biết cách đặt các biến môi trường cho maven - chẳng hạn như PATH và M2_HOME.

Tôi đã thử những điều dưới đây:

export M2_HOME=/home/gaurav/Java/maven3

export PATH= /home/gaurav/Java/maven3/bin:${PATH}

Sau khi cài đặt xong, tôi chạy mvn --versionvà nó chạy chính xác.

Nhưng khi lần sau tôi khởi động máy và gõ $M2_HOME, nó không hiển thị cho tôi chi tiết về các biến đường dẫn, cũng không mvn --versionđược thực thi.

Xin hãy giúp tôi giải quyết vấn đề này về việc thiết lập vĩnh viễn các biến môi trường trong Ubuntu.


Hãy xem cái này
Mitch

Câu trả lời:


22

Cập nhật: Eliah đã chỉ ra cho tôi rằng nếu bạn không tự động xây dựng các biến môi trường của mình, bạn nên lưu trữ chúng /etc/environment. Để thiết lập M2_HOMEvà thêm binthư mục vào của bạn PATH, bạn sẽ sửa đổi /etc/environmentnhư sau. Đảm bảo rằng bạn không chỉ sao chép / dán, vì /etc/environmenttệp của bạn có thể có một PATHbiến khác với của tôi.

M2_HOME="/home/gaurav/Java/maven3"
PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/home/gaurav/Java/maven3/bin"


Phương pháp thay thế (không được khuyến nghị): Giống như Mitch đã nói, bạn sẽ cần chỉnh sửa tệp cấu hình để thay đổi vĩnh viễn PATH của mình. Tôi đã chọn chỉnh sửa /etc/profiletập tin cấu hình của mình , vì nó áp dụng cho toàn hệ thống. Để chỉnh sửa tệp này, hãy chạy sudo nano /etc/profileĐây là đoạn trích có liên quan từ tệp cấu hình của tôi:

# /etc/profile: system-wide .profile file for the Bourne shell (sh(1))
# and Bourne compatible shells (bash(1), ksh(1), ash(1), ...).

JAVA_HOME=/usr/lib/jvm/java-6-oracle/
export JAVA_HOME

M2_HOME=/usr/local/apache-maven/apache-maven-3.0.4
export M2_HOME
M2=$M2_HOME/bin
export M2

PATH=$PATH:$JAVA_HOME
PATH=$PATH:$M2
export PATH

1
Bất kỳ lý do để không chỉ cần đặt JAVA_HOME, M2_HOMEM2định nghĩa trong /etc/environment, để thay thế?
Eliah Kagan

Đó chắc chắn là điều đúng về mặt ngữ nghĩa (vì /etc/environmentlà nơi được đề xuất để lưu trữ các biến môi trường trên toàn hệ thống). Nhưng tôi chỉ muốn giữ tất cả các biến môi trường của mình ở cùng một nơi. Nếu có một cách tôi có thể tự động xây dựng PATHbiến của mình chỉ bằng cách sử dụng /etc/environment, tôi sẽ ngay lập tức chuyển đổi.
Connor Brinton

1
Vì đó là động lực của bạn, bạn có thể muốn thêm bằng cách sử dụng /etc/environmentthay thế, xem xét rằng mục tiêu đặt tất cả các bài tập biến môi trường của bạn ở cùng một nơi không nhất thiết là mục tiêu của OP hoặc mục tiêu của hầu hết những người khác gặp phải câu hỏi này. Ngoài ra, bạn có thể muốn kiểm tra lại mục tiêu đó: Hầu hết thời gian, các biến môi trường nên được thêm vào ở cấp tài khoản người dùng, để chỉ ảnh hưởng đến một người dùng. (Sau đó, họ có thể đi vào ~/.pam_environmenthoặc ~/.profile.) Đúng là một số bài tập biến môi trường là động và phải nằm trong tập lệnh.
Eliah Kagan

@ Connor.brinton mặc dù tôi đã nói đường dẫn sử dụng phương pháp trên (chỉnh sửa /etc/environment) đường dẫn của tôi vẫn chưa được đặt
Kasun Siyambalapitiya

3

Bạn phải thêm PATH của bạn vào /etc/bash.bashrc làm root.

Từ gốc làm các bước sau:

  1. sudo nano /etc/bash.bashrc
  2. Ở cuối tập tin, thêm dòng sau:

    PATH=/home/computer/application/bin:$PATH  
    

Đây chỉ là một địa chỉ giả. Thay đổi nó theo địa chỉ mà bạn muốn và thêm vào :$PATHsau nó.

Cái này dành cho Ubuntu.

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.