1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

EclipsePDT で class_alias が認識できない?

Posted at

CakePHPのプロジェクトをEclipseにインポートしたらなんかエラー

CakePHPのプロジェクトを作成、EclipsePDTにインポートしてみると以下のようなエラーが出てしまいました。
001.png
でもEclipseはエラーを吐くがxamppで動かすと普通に動く。

Cake\Network\Exception\NotFoundException が見つからないそうですが。
vendor/cakephp/cakephp/src/Network/Exception には存在してます。
但しNotFoundException.phpの中身はこんな感じで、

<?php
// @deprecated 3.6.0 Backward compatibility alias
class_alias('Cake\Http\Exception\NotFoundException', 'Cake\Network\Exception\NotFoundException');
deprecationWarning('Use Cake\Http\Exception\NotFoundException instead of Cake\Network\Exception\NotFoundException.');

定義自体は存在しないでclass_aliasでCake\Http\Exception\NotFoundExceptionの方を参照してるんですね。

「Eclipseだしなぁ」という諦めの気持ちで エラーの以下の部分を、

use Cake\Network\Exception\NotFoundException;

以下のように書き換えたら、

use Cake\Http\Exception\NotFoundException;

エラーが解消されました。

一応解消

取り敢えず問題はないようなあるような。
case_aliasが使われてるのは互換性維持が目的のパターンが多いと思うので自分で使う分は気を付けてれば問題ないかな。

関連

class_alias が認識できないみたいなんだけどどーよ、みたいな報告が過去に上がってるみたいですけど、今どうなってるんでしょ。
https://bugs.eclipse.org/bugs/show_bug.cgi?id=522550

環境

EclipsePDT Eclipse 4.8 Photon (EclipsePDT 6.0.0)
XAMPP 7.2.9
PHP 7.2.9
CakePHP 3.6
Composer 4.8
OS Windows7
1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?