swoft框架,开发遇到基本坑

1.看好红色的部分,是提示注解带有单引号《'》的字符,检查下注解URL中是不是带有单引号《'》的符号,如果有,统一改成《""》双引号的。保存就可以了

Stack trace:

#0 /server/www/swoft/vendor/doctrine/annotations/lib/Doctrine/Common/Annotations/DocParser.php(446): Doctrine\Common\Annotations\AnnotationException::syntaxError('Expected PlainV...')

#1 /server/www/swoft/vendor/doctrine/annotations/lib/Doctrine/Common/Annotations/DocParser.php(1068): Doctrine\Common\Annotations\DocParser->syntaxError('PlainValue')

#2 /server/www/swoft/vendor/doctrine/annotations/lib/Doctrine/Common/Annotations/DocParser.php(1020): Doctrine\Common\Annotations\DocParser->PlainValue()

#3 /server/www/swoft/vendor/doctrine/annotations/lib/Doctrine/Common/Annotations/DocParser.php(874): Doctrine\Common\Annotations\DocParser->Value()

#4 /server/www/swoft/vendor/doctrine/annotations/lib/Doctrine/Common/Annotations/DocParser.p in /server/www/swoft/vendor/doctrine/annotations/lib/Doctrine/Common/Annotations/AnnotationException.php on line 42

PHP Fatal error:  Uncaught Doctrine\Common\Annotations\AnnotationException: [Syntax Error] Expected PlainValue, got ''' at position 12 in class App\Controllers\TestController. in /server/www/swoft/vendor/doctrine/annotations/lib/Doctrine/Common/Annotations/AnnotationException.php:42

 

 

 

2.此问题是端口被占用,到swoft下的.en文件修改一个叫8181的端口,保存就行了

swoft框架,开发遇到基本坑


3.如果出现访问URL是对,但老是报404错误时,一定是你的注解头多一个或者多个*号了,一定是两个*号开头,多也不行少了不行。如这种情况

问题404

{"msg":"Route not found for \/test\/index","file":"\/server\/www\/swoft\/vendor\/swoft\/http-server\/src\/Router\/HandlerAdapter.php","line":49,"code":404}

问题所在

swoft框架,开发遇到基本坑

 

 

4.当老是提示控制器Controller命名重复时,这是要检查下该控制器命名空间导入是否正确,导入的Controller是App\Controllers;后面有s,如果情况

swoft框架,开发遇到基本坑
解决问题,命名空间是App\Controllers,   不是App\Controller

swoft框架,开发遇到基本坑
 

 

5. 提示导入@Inject类,如图

swoft框架,开发遇到基本坑
解决方案-》在controller中导入Inject(说准确点是,哪个类缺少inject类,在该类导入其类)

swoft框架,开发遇到基本坑
 

6.该错误提示该类下缺少导入Bean类,在该类导入就可以了,错误提示,如图

swoft框架,开发遇到基本坑
解决方案-》在该提示类导入Bean类,保存就OK

swoft框架,开发遇到基本坑
 

7.swoft验证器,一定要注意,use相关的组件,如@Number, ValidatorFrom...,所有提示Annotations都是告诉你最近的注解有误或者未use相关组件,每个错误控制台都有提示的,如图

 

swoft框架,开发遇到基本坑
提示找不到相关ValidatorFrom的组件,use 进来就可以了

swoft框架,开发遇到基本坑
 

 

8.执行url提示socket问题时,如果

swoft框架,开发遇到基本坑
 

该提示是告诉我们系统找不到这个路劲,要去检查下注解是否正确,像我这么粗心,要不是缺了/,就是prefix

swoft框架,开发遇到基本坑
 

9.所有看到AnnotationException都是注解问题,需要仔细看哪里有问题,想我就把$符号打成成@符号,如图

swoft框架,开发遇到基本坑
解决方案:把提示所有带有@符号错误的,都改成$符号,这是语法的错误,注意,php变量是$符号

 

10.总结java.net.SocketException: Connection reset几个解决方案,提示如下

swoft框架,开发遇到基本坑
此问题是提示路由有问题,访问不到,需要重新设置

 1.检查@Controller是否注解正确,正确写法是@Controller(prefix="/route") 或 @Controller("/route")

 2.检查@RequestMapping注解是不是正确,正确写法是@RequestMapping(route="search",method={RequestMethod::GET}),method没有大写,不要写成Method,这样就男女不分了

 

 

11.引入共有方法运行提示该方法是空是,解决方法是在引入方法上面加入@Inject()注解

分享:

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值