解决mybatis-plus代码生成器在idea中的module生成代码,但是生成到外面的project

今天在用mybatis plus的代码生成器在idea里的module中生成代码时发现生成的代码都跑到外面的project中去了,打印了一下代码生成器中使用的 user.dir 属性

解决mybatis-plus代码生成器在idea中的module生成代码,但是生成到外面的project

 

发现获取的是外面project的路径而不是里面module的路径  先解释一下user.dir 属性   user.dir属性就是获取当前工作的目录

 

解决mybatis-plus代码生成器在idea中的module生成代码,但是生成到外面的project

当前工作目录就是执行这个class类的目录  比如创建一个Test1的类   在不同目录下执行  都打印出的是当前执行java命令的目录

解决mybatis-plus代码生成器在idea中的module生成代码,但是生成到外面的project

解决mybatis-plus代码生成器在idea中的module生成代码,但是生成到外面的project

 

好了 回归刚刚我们的问题

我们只需要在IDEA中为每个包含main方法的类设置一个Working directory,我们只需要将mybatis plus 代码生成器的类的work directory 设置为当前moduel就可以了,但是在此之前我们要检查一下我们当前module是否有 .iml文件(这个文件就是idea的工程配置文件)   如果没有无法设置当前的module为working directory   例如我的里面就没有 iml   我们在当前module上右键打开 open in terminal  执行一下 mvn idea:module  再右键选择 synchronize 。。 刷新module  iml就会出来了

解决mybatis-plus代码生成器在idea中的module生成代码,但是生成到外面的project

解决mybatis-plus代码生成器在idea中的module生成代码,但是生成到外面的project

 

解决mybatis-plus代码生成器在idea中的module生成代码,但是生成到外面的project

 

 

 

 

解决mybatis-plus代码生成器在idea中的module生成代码,但是生成到外面的project

 

iml文件生成好了之后 点击锤子右边的下拉框  选择Edit Configurations..    或可以直接点击CodeGenerator(就是你要设置working directory的类) 进入Configurations  为代码生成器配置working directory为 当前module就可以

解决mybatis-plus代码生成器在idea中的module生成代码,但是生成到外面的project

解决mybatis-plus代码生成器在idea中的module生成代码,但是生成到外面的project

解决mybatis-plus代码生成器在idea中的module生成代码,但是生成到外面的project

解决mybatis-plus代码生成器在idea中的module生成代码,但是生成到外面的project

 

再重新运行mybatis plus 的代码生成器  就可以顺利生成到module下了

解决mybatis-plus代码生成器在idea中的module生成代码,但是生成到外面的project