2016-11-27 10 views
0

PHPフレームワークNette 2.4の単一ファイルバージョンを作成しようとしています。Nette pharブートファイル

<?php 
$phar = new Phar('nette.phar'); 
$phar->buildFromDirectory(__DIR__ . '/../vendor/nette'); 
$phar->setStub("<?php 
    require 'phar://' . __FILE__ . '/loader.php'; 
    __HALT_COMPILER();"); 
$phar->compressFiles(Phar::GZ); 

すべてがファイルが作成され、罰金です:私はこのコードを使用してのpharファイルを作成します。

// bootstrap.php 
<?php 
require __DIR__ . '/nette.phar'; 
... 

エラーが発生します:私は、この圧縮されたバージョンを使用しようとした場合

Warning: require(phar://C:\wamp64\www\app\nette.phar/loader.php): failed to open stream: phar error: &quot;loader.php&quot; is not a file in phar &quot;C:/wamp64/www/app/nette.phar&quot; in C:\wamp64\www\app\nette.phar on line 2 

はそう、単一ファイルのバージョンがロードされているが、ないブートファイルloader.phpはありません。誰が間違いがどこにあるか知っていますか?すべての提案をありがとう!

+0

それを見つけることができ、自分自身.phar作成する必要はありませんが、あなたはloader.phpがありますか?あなたが作曲家を通してnetteをインストールしたなら、それは 'vendor/nette/nette/Nette/Framework.php'になければなりません。 –

答えて

0

Composer経由でダウンロードしたNetteから.pharを作成することはできません。必要なファイル(Loader.phpなど)がありません。

.pharを作成する場合は、公式の.zipをhttps://nette.org/en/downloadからダウンロードし、フォルダ./Netteから.pharを作成します。

__

ところで、あなたはフォルダに.zipファイルにNette-minified