Best location to put your CSS and JS files in a Mavenized Java Web app?

帅比萌擦擦* 提交于 2019-12-03 06:09:48

If you don't need to filter CSS and JS files, I would simply put them in src/main/webapp (if you put them in src/main/resources, they will end up in target/classes and in WEB-INF/classes in the WAR which is very unlikely what you want). If you need to filter them, additional resources can be included in the WAR using the webResources parameter. Have a look at Adding and Filtering External Web Resources for more details.

I think they should be under src\main\webapp. The main rationale for saying this is that this is the standard suggested by Maven, and the Maven philosophy is that all projects should follow the same structure as much as possible.

TMarin

Taken from Introduction to the Standard Directory Layout:

"If there are other contributing sources to the artifact build, they would be under other subdirectories: for example src/main/antlr would contain Antlr grammar definition files."

So I think src/main/javascript and src/main/css is the right place...

What do you think?

Dave McLure

I am seeing quite a variation of answers to this question. One set of threads (like some people in this thread) seem to think that Maven apps should place css/images/js files into the src\main\webapp folder - similar to the traditional J2EE pattern. Others feel that the resources (or another similar peer) folder outside of webapps should be used instead:

What are the conventional locations for for JSPs, JavaScript, CSS, Images in Maven web projects?

I have yet to form an opinion, but it would seem to make sense to separate these client side types of files from the server side - if only because in high performance focused production situations, the static client side files such as these are typically separated out and placed into a cacheable front end web server for faster access anyway, so keeping them in their own separate resources folder would seem to make this job easier.

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!