오늘 같은 유형의 오류가 발생했습니다.
PHP 치명적 오류 : 100 행의 /var/www/m2/magento2/app/code/path/to/the/class.php에서 이름이 이미 사용 중이므로 Class \ Name \ Here 클래스를 선언 할 수 없습니다.
여기서 라인 100은 파일의 끝입니다.
대략 4 시간의 디버깅 후에 네임 스페이스 선언에 잘못 인쇄 된 이유가 있습니다. 마지막 순간까지 나는 그것이 이름 선언에서 인쇄상의 오류라고 믿지 않았지만 모든 이름을 새로 작성했을 때 실수는 사라졌습니다. 이 기사 는 매우 도움이되었습니다.
나는 잠시 동안 머리를 긁고, 무슨 일이 일어나고 있는지 궁금해하며, 이것이 사실임을 깨달을 것이다
Pulsetorm
즉, 네임 스페이스 이름을 잘못 입력했으며 초기 자동로드가 클래스 파일을로드 할 때 찾고있는 클래스를 정의하지 않은 다음 두 번째 오토 로더 (일반적으로 합성기)가 다시로드하고 다시 정의하려고합니다. 잘못된 수업.
즉, 마 젠토는 수업을 원했다
Pulsestorm\Helloworld\Observers\Block
그러나 나는 정의했다
Pulsetorm\Helloworld\Observers\Block
잘못된 네임 스페이스 덕분입니다.
감사합니다, Alan Storm :)
최신 정보:
이 오류의 또 다른 유형은이 예제에서와 같이 네임 스페이스의 일부가 누락 된 잘못된 네임 스페이스 선언입니다.
오류:
리포지토리 코드 생성 ... 1/7 [====> -----------------------] 14 % 1 초 50.0 MiBPHP 치명적인 오류 : 선언 할 수 없습니다 /var/www/vhosts/rwld/vendor/magento/data-migration-tool/tests/unit/testsuite/Migration/Step/UrlRewrite/Version11410to2000Test.php에서 이름이 이미 사용 중이므로 Migration \ Step \ Version11410to2000Test 클래스 109 행
여기서 라인 109는 파일의 끝입니다.
파일 에서이 네임 스페이스의 경로 가 이므로 네임 스페이스가 올바른 네임 vendor/magento/data-migration-tool/tests/unit/testsuite/Migration/Step/UrlRewrite/Version11410to2000Test.php
스페이스 인 것처럼 네임 스페이스를 찾았습니다 . 네임 스페이스를 오류로 변경하면 사라집니다.Migration\Step
Migration\Step\UrlRewrite
Migration/Step/UrlRewrite
Migration/Step/UrlRewrite