让 Grails 不从带连字符的应用程序名称创建包
如果我创建一个名为 abcd 的 Grails 应用程序,执行 grails create-domain-class User
将导致 Grails 在子目录 grails-app/domain/a/b/c/ 中创建一个 User 类d,给它包 abcd 如何防止 Grails 创建这些包名称?
If I create a Grails app called a-b-c-d, doing a grails create-domain-class User
will result in Grails creating a class User in the sub-directory grails-app/domain/a/b/c/d, giving it the package a.b.c.d. How do I prevent Grails from creating these package names?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
您绝对应该使用包,但您可以通过更改 Config.groovy 中的
grails.project.groupId
值来自定义默认包。默认值为appName
,这是您的应用程序名称,但您可以将其更改为任何值包,例如'com.foo.bar'
。此外,您可以在运行创建脚本时指定包,如果您确实想在默认包中创建类,则可以使用以下语法:
并且它不会使用包。
You should definitely use packages, but you can customize the default package by changing the value of
grails.project.groupId
in Config.groovy. The default value isappName
which is your application name, but you can change it to any value package, e.g.'com.foo.bar'
.In addition you can specify the package when running a create script, and if you do want to create classes in the default package, you can use this syntax:
and it won't use a package.
我不知道,这听起来像是一个错误。有两种明显的解决方法:
create-domain-class
、create-controller-class
等。永远不要使用这些命令,因为它们除了创建类(以及相应的空测试类)之外实际上不执行任何操作。就我个人而言,我发现自己创建类比运行 Grails 命令更容易I have no idea, this sounds like a bug. There are two obvious workarounds
create-domain-class
,create-controller-class
, etc. I never use these commands because they don't actually do anything other than creating the class (and a corresponding empty test class). Personally, I find it easier just to create the class myself than to run the Grails command您可以在调用 cli 命令时指定包...
You can specify the package when you call the cli command...