LINUX.ORG.RU
ФорумAdmin

Как сделать архив jar исполняемым в терминале ???

 ,


0

3

постоянно пишет, пробовал разными способами даже в текущей директории !!!

root@debian:/home/user# chmod ugo+x /home/user/ml.jar chmod: cannot access '/home/user/ml.jar': No such file or directory

root@debian:/home/user# chmod a+rx ml.jar chmod: cannot access 'ml.jar': No such file or directory

root@debian:/home/user# java -jar -tf mp.jar Error: Unable to access jarfile mp.jar

ПОМОГИТЕ !!!! !!! файл ml.jar в директории есть !!!!!

Jar содержит классфайлы с байткодом который исполняется на jvm. Т.е. как предыдущий комментатор указал запускать нужно java -jar ml.jar

anonymous ()
Ответ на: комментарий от anonimussss

Jar это zip архив, проверь что он не пустой в любом архиваторе понимающим zip или так jar -tf mp.jar[/url]

anonymous ()
Ответ на: комментарий от Jopich1

root@debian:/home/user# chmod ugo+x /home/user/ml.jar chmod: cannot access '/home/user/ml.jar': No such file or directory

root@debian:/home/user# chmod a+rx ml.jar chmod: cannot access 'ml.jar': No such file or directory

root@debian:/home/user# java -jar -tf mp.jar Error: Unable to access jarfile mp.jar

Помоги !!!

anonimussss ()

root@debian

Во-первых, не работай под рутом, примета плохая.

mp.jar
ml.jar

Во-вторых, ты уж определись как твой файл называется.

И в-третьих, вывод ls действительно покажи, что у тебя там.

morse ★★★★★ ()
Ответ на: комментарий от anonimussss

тебе английским по белому говорят, что этого файла нет. по крайней мере в этой директории.

Dark_SavanT ★★★★★ ()
Последнее исправление: Dark_SavanT (всего исправлений: 1)
Ответ на: комментарий от anonimussss

Слушай, мы уже поняли что файла ml.jar там нет. Именно поэтому уже пятый раз предлагаем тебе запустить команду ls. Просто ls, без параметров.

morse ★★★★★ ()

посмотри, как Spring делает исполняемые jar-ники. Там в начале bash-код, а после - сам jar «вписан» в секцию данных.

bvn13 ★★★★★ ()
Ответ на: комментарий от bvn13

да не, у него что то странное. по крайней мере на первый взгляд.

ТС, попробуй ls -la как уже сказали и вывод в студию

AndreyKl ★★★★★ ()
Ответ на: комментарий от bvn13

примерно так:

1) Создать файл stub.sh с таким содержимым:

#!/bin/sh
MYSELF=`which "$0" 2>/dev/null`
[ $? -gt 0 -a -f "$0" ] && MYSELF="./$0"
java=java
if test -n "$JAVA_HOME"; then
    java="$JAVA_HOME/bin/java"
fi
exec "$java" $java_args -jar $MYSELF "$@"
exit 1

2) Выполнить код:

cat stub.sh helloworld.jar > helloworld.run && chmod +x helloworld.run

где helloworld.jar наш jar-файл, а helloworld.run исполняемый файл

r0ck3r ★★★★★ ()
Последнее исправление: r0ck3r (всего исправлений: 1)
Ответ на: комментарий от r0ck3r

если очень хочется, то можно вообще вывод направить в файл с расширением jar, например, helloworld-executable.jar, и файл будет выполняться как из терминала, так и в среде Windows при помощи java -jar helloworld-executable.jar

r0ck3r ★★★★★ ()
Ответ на: комментарий от anonimussss

ты уверен что ml.jar не директория ?

Введи ls в терминал, затем введи cat ml.jar > /dev/null

Сделай скриншот терминала (убедись что обе команды на скрин попали) и скинь его сюда

Dred ★★★★★ ()

На такой тред грех не подписаться

das_tier ★★★★★ ()

чёт сообщений от anonimussss больше нет.. видать понял масштабы своей одури и повесился..

anonymous ()

У меня случай как-то был из этой же серии... ) Сдал постоянному клиенту очередную версию ПО, он её продал в какую-то японскую фирму, ну и через денек-другой дает емелю пользователя и просит разобраться — что-то там никак не конфигурится. А там после развертывания архива с приложением нужно было настроить файл mail.ini. Несколько дней переписывался с японочкой — та утверждала, что все делает по инструкции и правит тот самый файл. В конечном итоге додумался попросить скриншот папки приложения — тут-то меня и осенило ). Судя по картинке, девушка работала со списком файлов в режиме сокрытия расширений файлов и на этой самой картинке почему-то болтался файл main.ini. В общем, выяснилось, что в архиве вместе с файлом main.ini болтался еще файл main.ini.old – его-то она и правила )))

Несколько раз еще сталкивался с ситуациями, когда случайно при создании файлов вбивали в имя файла русские буквы вместо латиницы (е,м,о,в,к) или визуально путали единичку с латинской l (которая L).

vinvlad ()
Ответ на: комментарий от morse

user@debian:~$ sudo su root@debian:/home/user# chmod ugo+rwx /home/user/ root@debian:/home/user# ls -lh total 21M drwxr-xr-x 2 user user 60 May 12 07:48 Desktop drwxr-xr-x 2 user user 40 May 12 07:11 Documents drwxr-xr-x 2 user user 60 May 12 07:48 Downloads -rw-r--r-- 1 user user 0 May 12 07:49 helloworld.run -rw-rw-rw- 1 user user 16M Apr 29 06:30 libflashplayer.so -rw-rw-rw- 1 user user 4.5M May 12 07:47 ml.jar drwxr-xr-x 2 user user 40 May 12 07:11 Music drwxr-xr-x 2 user user 40 May 12 07:11 Pictures drwxr-xr-x 2 user user 40 May 12 07:11 Public drwxr-xr-x 2 user user 40 May 12 07:11 Templates drwxr-xr-x 2 user user 40 May 12 07:11 Videos root@debian:/home/user# sudo chmod +x ml.jar chmod: cannot access 'ml.jar': No such file or directory

anonimussss ()
Ответ на: комментарий от anonimussss

www.linux.org.ru/help/lorcode.md

user@debian:~$ sudo su 
root@debian:/home/user# chmod ugo+rwx /home/user/
root@debian:/home/user# ls -lh 
total 21M 
drwxr-xr-x 2 user user 60 May 12 07:48 Desktop 
drwxr-xr-x 2 user user 40 May 12 07:11 Documents 
drwxr-xr-x 2 user user 60 May 12 07:48 Downloads 
-rw-r--r-- 1 user user 0 May 12 07:49 helloworld.run 
-rw-rw-rw- 1 user user 16M Apr 29 06:30 libflashplayer.so 
-rw-rw-rw- 1 user user 4.5M May 12 07:47 ml.jar 
drwxr-xr-x 2 user user 40 May 12 07:11 Music 
drwxr-xr-x 2 user user 40 May 12 07:11 Pictures 
drwxr-xr-x 2 user user 40 May 12 07:11 Public 
drwxr-xr-x 2 user user 40 May 12 07:11 Templates 
drwxr-xr-x 2 user user 40 May 12 07:11 Videos 
root@debian:/home/user# sudo chmod +x ml.jar 
chmod: cannot access 'ml.jar': No such file or directory
ddidwyll ★★★ ()
Ответ на: комментарий от anonimussss

Ну что ж, остается только предположить что линукс не для тебя, раз ты даже не можешь без ошибок скопировать имя файла из вывода ls в командную строку.

morse ★★★★★ ()
Ответ на: комментарий от anonimussss

А не закрался ли пробел в начало или конец имени файла? )

Выполни команду:

ls -1 | xargs -I {} echo ={}=

(ls минус единичка)

и скинь сюда отформатированный вывод. Посмотри, будут ли символы «=» вплотную прилегать к имени файла в выводе команды.

vinvlad ()
Ответ на: комментарий от anonimussss

... если посмотреть HTML-ку данного поста, то видно, что в начале имени файла стоит пробел )))

user@debian:~$ sudo su
root@debian:/home/user# chmod ugo+rwx /home/user/
root@debian:/home/user# ls -lh
total 21M
drwxr-xr-x 2 user user   60 May 12 07:48 Desktop
drwxr-xr-x 2 user user   40 May 12 07:11 Documents
drwxr-xr-x 2 user user   60 May 12 07:48 Downloads
-rw-r--r-- 1 user user    0 May 12 07:49 helloworld.run
-rw-rw-rw- 1 user user  16M Apr 29 06:30 libflashplayer.so
-rw-rw-rw- 1 user user 4.5M May 12 07:47  ml.jar
drwxr-xr-x 2 user user   40 May 12 07:11 Music
drwxr-xr-x 2 user user   40 May 12 07:11 Pictures
drwxr-xr-x 2 user user   40 May 12 07:11 Public
drwxr-xr-x 2 user user   40 May 12 07:11 Templates
drwxr-xr-x 2 user user   40 May 12 07:11 Videos
root@debian:/home/user# sudo chmod +x ml.jar
chmod: cannot access 'ml.jar': No such file or directory

vinvlad ()

Через binfmt-misc нужно джаву зарегистрировать как интерпретатор для запуска по ./

anonymous ()
Ответ на: комментарий от das_tier

Думаю, он прекрасно это знает. И тред - просто троллинг.

Да скорее всего... - просто прикольная задачка на логическое мышление )))

vinvlad ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.