使用springAop 完成日志输入到数据库时,在本地项目中没有任何问题,但是在将系统打war包部署到服务器时,就会出现ProceedingJoinPoint joinPoint 获取参数名映射失败,数据库中映射的参数名为:arg0,arg1,…经过查找资料发现一个解决办法。
Object[] args = joinPoint.getArgs();
//得不到参数名
Parameter[] parameters = method.getParameters();
解决办法:
1.如果本地无法映射参数名,就在setting中搜索
javacompiler,设置-parameters.
2.将代码打包部署到服务器时,会发现参数名还是映射不到,这时候需要在po’m文件中增加一段配置文件。
注意:org.apache.maven.plugins2.X版本好像没有标签
需要使用3.X版本
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.8.0</version>
<configuration>
<source>1.8</source>
<target>1.8</target>
<encoding>UTF-8</encoding>
<compilerArgs>
<arg>-parameters</arg>
</compilerArgs>
</configuration>
</plugin>