Как указано в заголовке, CSS и JS рендерятся в dev на локальном хосте, они также рендерятся, когда запускается файл JAR из команды package/war.
Связывание файлов манифеста актива.
<asset:stylesheet href="application.css" />
<asset:javascript src="application.js" />
Grails-приложение/активы/таблицы стилей/application.css
/*
* This is a manifest file that'll be compiled into application.css, which will include all the files
* listed below.
*
* Any CSS file within this directory can be referenced here using a relative path.
*
* You're free to add application-wide styles to this file and they'll appear at the top of the
* compiled file, but it's generally better to create a new file per style scope.
*
*= require main
*= require mobile
*= require bootstrap
*= require bootstrap-select
*= require_self
*/
Grails-приложение/активы/javascripts/application.js
// This is a manifest file that'll be compiled into application.js.
//
// Any JavaScript file within this directory can be referenced here using a relative path.
//
// You're free to add application-wide JavaScript to this file, but it's generally better
// to create separate JavaScript files as needed.
//
//= require jquery-2.1.3.js
//= require bootstrap.js
//= require bootstrap-select.js
//= require_tree .
//= require_self
Просматривая войну, созданную Дженкинсом с помощью команды war, я вижу META-INF, WEB-INF и каталоги активов. Внутри каталога assets я вижу все файлы из grails-app/assets, а также те же файлы с разными расширениями, такими как .gz и .map, а также то, что кажется хэшем после имен файлов.
Это источник рендеринга страницы в виде развернутой WAR.
<!DOCTYPE HTML>
<html>
<head>
<title>Knowledge Asset Inventory</title>
</head>
<body>
Как видите, здесь нет связанных таблиц стилей/скриптов, а место, где они должны быть, пустое.