Я не думаю, что спецификация JVM дает какие-то гарантии об этом. Вы действительно должны finally
закрыть эти ресурсы.
Когда процесс завершится, операционная система освободит все связанные с ней ресурсы (включая память, дескрипторы файлов и сетевые сокеты).
Есть объекты ОС для проверки открытых файлов и потоков, таких как lsof
.
Если Вы загружаете исходный код и читаете README
файл. Это, вероятно, скажет Вам, что необходимо сделать
perl Makefile.PL
make
make test
make install
или
perl Build.PL
./Build
./Build test
./Build install
Если Вы находитесь на поле Linux, очень значительная часть пакетов может обычно получаться с помощью созданного в диспетчере пакетов. Например, в системе Ubuntu, если Вы хотите установить модуль PostgreSQL Perl, Вы были бы простой делать:
sudo apt-get install libpg-perl
Вы видите список модулей для Ubuntu здесь: http://packages.ubuntu.com/hardy/perl/
, я нахожу, что могу часто предполагать имена сам. Не уверенный, если это помогает вообще, но для меня, я часто нахожу это легче использовать, чем CPAN, как он делает намного лучше при разрешении зависимостей.
При загрузке исходного кода он будет обычно иметь Make-файл. МН. Вы выполняете "Make-файл жемчуга. МН; сделайте; сделайте тест; сделайте установку", и она создаст и установит для Вас.
, Очевидно, если Вы не используете CPAN.pm, Вы оказываетесь перед необходимостью иметь дело с зависимостями сами.
кроме того, если причина Вы не можете использовать CPAN.pm, то, что у Вас нет разрешения установить в/usr/lib/perl, можно вынудить CPAN.pm установить локально, но я забываю как.
Если бы проблемой не является никакой корневой доступ, я рекомендовал бы смотреть local::lib
и также эта веб-страница для CPAN.pm и некорневой установки.
, Но отвечать на вопрос, как спросили, CPAN или CPANPLUS полезны, но они не требуются. Можно всегда делать это старомодный путь, как Leon говорит - хотя обычно это легче не к.
При использовании Red Hat (Fedora, CentOS), необходимо использовать об/мин для зависимостей от Perl по мере возможности. Пакеты Perl почти всегда названы Perl-именем-модуля, например, perl-DBI, perl-Spreadsheet-WriteExcel, и т.д.
На Ubuntu, схема именования является libmodule-name-perl.
Если .pm файл является чистым Perl и не должен быть скомпилирован, можно просто поместить его в папку lib приложения и использовать его в качестве нормального.
Я, как другие имеют, высоко предложил бы использовать CPAN.pm. Это - бриз для использования и может разрешить любые зависимости, связанные с модулем, в котором Вы нуждаетесь автоматически.
С другой стороны, я предположил бы, что Вы перечитываете perlmodinstall документ в perldoc, поскольку он сообщает подробности относительно другой OS также.
С уважением,
Jeff
См. Здесь: Как для установки модулей Perl с использованием CPAN без root
Я только что установил это на сервере без root-доступа, и CPAN делает все автоматически.
Но если вы действительно хотите установить модуль без CPAN и у вас нет root (при условии, что вы не хотите использовать CPAN), вы можете сделать это следующим образом
perl Makefile.PL PREFIX=$HOME
make
make install
You ' Вам придется самостоятельно искать зависимости, поэтому лучше использовать CPAN.