bash는 설치 후 mvn 명령을 찾을 수 없습니다

bash는 설치 후 mvn 명령을 찾을 수 없습니다

CentOS 7에 Maven을 설치하려고 mvn -version하는데 bash: mvn: command not found.... CentOS 7 터미널에서 maven을 호출할 수 있도록 이 문제를 어떻게 해결합니까?

내가 취한 단계는 다음과 같습니다.이 튜토리얼, 또한 다음과 같이 명시적이고 완전하게 설명됩니다.

wget http://www.eng.lsu.edu/mirrors/apache/maven/maven-3/3.3.1/binaries/apache-maven-3.3.1-bin.zip

unzip apache-maven-3.3.1-bin.zip
mkdir /opt/maven
mv apache-maven-3.3.1/ /opt/maven
ln -s /opt/maven/bin/mvn /usr/bin/mvn
gedit /etc/profile.d/maven.sh
Add the following contents to /etc/profile.d/maven.sh :
    #!/bin/bash
    MAVEN_HOME=/opt/maven
    PATH=$MAVEN_HOME/bin:$PATH
    export PATH MAVEN_HOME
    export CLASSPATH=.

Save and close the file. Then: 
chmod +x /etc/profile.d/maven.sh
source /etc/profile.d/maven.sh

컴퓨터를 로그오프하거나 다시 시작하십시오. 그런 다음(이번에는 사용자 이름과 결과 표시):

[root@localhost ~]# mvn -version  
bash: mvn: command not found...  
[root@localhost ~]# mvn --version
bash: mvn: command not found...
[root@localhost ~]# echo $MAVEN_HOME  
/opt/maven  

Ant가 설치되어 있지 않습니다. 그리고 톰캣 설치도 오래전에 따로 완료했습니다.


편집하다


@MarkPlotnick의 제안에 따라 다음을 시도했고 다음과 같은 결과를 얻었습니다.

[root@localhost ~]# mv /opt/maven /opt/maven.bak
[root@localhost ~]# mv /opt/maven.bak/apache-maven-3.3.1 /opt/maven
[root@localhost ~]# mvn -version
Apache Maven 3.3.1 (lotsnumbersandletters; 2015-03-13T13:10:27-07:00)
Maven home: /opt/maven
Java version: 1.7.0_71, vendor: Oracle Corporation
Java home: /usr/java/jdk1.7.0_71/jre
Default locale: en_US, platform encoding: UTF-8
OS name: "linux", version: "versionnumber", arch: "amd64", family: "unix"

답변1

인용한 지침에는 다음과 같이 명시되어 있습니다.

wget http://www.eng.lsu.edu/mirrors/apache/maven/maven-3/3.2.3/binaries/apache-maven-3.2.3-bin.zip
unzip apache-maven-3.2.3-bin.zip
mv apache-maven-3.2.3/ /opt/maven

등 이 발생하게 됩니다 /opt/maven/bin./opt/maven/lib

수행하는 작업은 약간 다릅니다.

wget http://www.eng.lsu.edu/mirrors/apache/maven/maven-3/3.3.1/binaries/apache-maven-3.3.1-bin.zip
unzip apache-maven-3.3.1-bin.zip
mkdir /opt/maven
mv apache-maven-3.3.1/ /opt/maven

등 으로 이어집니다 /opt/maven/apache-maven-3.3.1/bin./opt/maven/apache-maven-3.3.1/lib

mv x /y/zx가 디렉터리인 경우 이렇게 하면 세 가지 다른 일이 발생할 수 있습니다.

  • 존재하지 않는 경우 /y/z루트가 가정된 전체 트리가 x로 이동됩니다 /y/z.
  • 이미 존재하고 디렉토리인 경우 /y/z트리는 으로 이동됩니다 /y/z/x.
  • /y/z이미 존재하고 디렉토리가 아닌 경우 mv오류 메시지가 인쇄되고 아무것도 이동되지 않습니다.

관련 정보