Программа может быть найдена в следующих пакетах
Когда я пишу mvn
Команда в терминале я получаю это сообщение:
The program 'mvn' can be found in the following packages:
* maven
* maven2
Try: sudo apt-get install <selected package>
Я также получаю то же сообщение для node
команда:
The program 'node' can be found in the following packages:
* node
* nodejs-legacy
Try: sudo apt-get install <selected package>
Что, я думаю, означает, что у меня установлены две версии Maven и для node
у меня есть другая программа, кроме nodejs, которая также имеет node
Команда, связанная с этим.
Так что он хочет, чтобы я использовал:
sudo apt-get install maven
или же
sudo apt-get install maven2
Постоянно общаться mvn
команда с одной из программ (версии maven
) maven
или же maven2
,
Теперь есть способ временно использовать mvn
за maven
или для maven2
? Я имею в виду способ, которым я могу выбрать один из maven
или же maven2
временно?
2 ответа
Команда mvn
В случае mvn
Вы можете установить maven
(v3, а не v1) и maven2
(v2) рядом с:
sudo apt-get install maven maven2
и у вас будет два двоичных файла.
/usr/share/maven/bin/mvn
/usr/share/maven2/bin/mvn
Для переключения между двумя двоичными файлами используйте:
sudo update-alternatives --config mvn
пример
% mvn -version
Apache Maven 2.2.1 (rdebian-17)
Java version: 1.8.0_45
Java home: /usr/lib/jvm/java-8-oracle/jre
Default locale: en_US, platform encoding: UTF-8
OS name: "linux" version: "3.19.0-22-generic" arch: "amd64" Family: "unix"
% sudo update-alternatives --config mvn
There are 2 choices for the alternative mvn (providing /usr/bin/mvn).
Selection Path Priority Status
------------------------------------------------------------
* 0 /usr/share/maven2/bin/mvn 200 auto mode
1 /usr/share/maven/bin/mvn 150 manual mode
2 /usr/share/maven2/bin/mvn 200 manual mode
Press enter to keep the current choice[*], or type selection number: 1
update-alternatives: using /usr/share/maven/bin/mvn to provide /usr/bin/mvn (mvn) in manual mode
% mvn -version
Apache Maven 3.0.5
Maven home: /usr/share/maven
Java version: 1.8.0_45, vendor: Oracle Corporation
Java home: /usr/lib/jvm/java-8-oracle/jre
Default locale: en_US, platform encoding: UTF-8
OS name: "linux", version: "3.19.0-22-generic", arch: "amd64", family: "unix"
Команда node
В случае node
Это невозможно или только с большими усилиями:
% sudo apt-get install node nodejs-legacy
Reading package lists... Done
Building dependency tree
Reading state information... Done
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:
The following packages have unmet dependencies:
node : Conflicts: nodejs-legacy but 0.10.25~dfsg2-2ubuntu1 is to be installed
nodejs-legacy : Conflicts: node but 0.3.2-7.4 is to be installed
E: Unable to correct problems, you have held broken packages.
Он говорит, что вы не установили эти программы. Таким образом, вы можете установить nodejs с помощью:
sudo apt-get install nodejs-legacy
И установить Maven с:
sudo apt-get install maven