Java 在liferay 6.1.1中部署主题时没有反映任何更改
我是liferay CMS的新手。我正在liferay 6.1.1中开发一个主题。我的问题是,当我对主题进行任何更改时,它在部署后不会得到反映。 请检查我是否处于正确的流程中:Java 在liferay 6.1.1中部署主题时没有反映任何更改,java,velocity,liferay-6,liferay-theme,Java,Velocity,Liferay 6,Liferay Theme,我是liferay CMS的新手。我正在liferay 6.1.1中开发一个主题。我的问题是,当我对主题进行任何更改时,它在部署后不会得到反映。 请检查我是否处于正确的流程中: 第一个新-->liferay项目-->选定主题 部署了创建-diff文件夹的主题和剩余的所有 主题内docroot文件夹中的文件夹 从我的主题的模板文件夹复制portlet_normal.vm并制作 变化 将portlet_normal.vm粘贴到docroot(文件夹)->_diff(文件夹)->模板(文件夹)中的我的
<!DOCTYPE html>
#parse ($init)
<html class="#language("lang.dir")" dir="#language("lang.dir")" lang="$w3c_language_id">
<head>
<title>$the_title - $company_name</title>
$theme.include($top_head_include)
</head>
<body class="$css_class">
$theme.include($body_top_include)
#if ($is_signed_in)
#dockbar()
#end
<div id="wrapper">
<a href="#main-content" id="skip-to-content">#language("skip-to-content")</a>
<header id="banner" role="banner">
<div id="heading">
<h1 class="site-title">
<a class="$logo_css_class" href="$site_default_url" title="#language("go-to") $site_name">
<img alt="$logo_description" height="$site_logo_height" src="$site_logo" width="$site_logo_width" />
</a>
#if ($show_site_name)
<span class="site-name" title="#language("go-to") $site_name">
$site_name
</span>
#end
</h1>
<h2 class="page-title">
<span>$the_title</span>
</h2>
</div>
#if (!$is_signed_in)
<a href="$sign_in_url" id="sign-in" rel="nofollow">$sign_in_text</a>
#end
#if ($has_navigation || $is_signed_in)
#parse ("$full_templates_path/navigation.vm")
#end
</header>
<div id="content">
**/*<nav class="site-breadcrumbs" id="breadcrumbs">
<h1>
<span>#language("breadcrumbs")</span>
</h1>
#breadcrumbs()
</nav>*/**
#if ($selectable)
$theme.include($content_include)
#else
$portletDisplay.recycle()
$portletDisplay.setTitle($the_title)
$theme.wrapPortlet("portlet.vm", $content_include)
#end
</div>
<footer id="footer" role="contentinfo">
<p class="powered-by">
#language("powered-by") <a href="http://www.liferay.com" rel="external">Liferay</a>
</p>
</footer>
</div>
$theme.include($body_bottom_include)
</body>
$theme.include($bottom_include)
</html>
#解析($init)
$theu title-$company\u name
$theme.include($top\u head\u include)
$theme.include($body\U top\U include)
#如果($已登录)
#dockbar()
#结束
#如果($show\u site\u name)
$site\u name
#结束
$U标题
#如果(!$已登录)
#结束
#如果($has|navigation | |$is|u signed_in)
#解析($full\u templates\u path/navigation.vm)
#结束
**/*
#语言(“面包屑”)
#面包屑
*/**
#如果($可选)
$theme.include($content\u include)
#否则
$portletDisplay.recycle()
$portletDisplay.setTitle(_标题)
$theme.wrapPortlet(“portlet.vm”,$content\u include)
#结束
#语言(“动力”)
$theme.include($body\u bottom\u include)
$theme.include($bottom_include)
实际上,我想隐藏显示在主页上的面包屑。因此,我在portlet_normal.vm中对该特定部分进行了注释
任何关于这方面的帮助都将不胜感激,我完全陷入了这个困境。从第1步开始,您似乎正在使用Eclipse创建Liferay主题项目。当您创建项目时,您将获得 现在,您需要做的就是更改_diff目录中的文件,并使用ant file build.xml构建主题,其余的将由构建文件负责。我不知道为什么需要第3步和第4步 如果问题仍然存在,请注意以下几点: velocity.engine.resource.manager.cache.enabled=false
在portal-ext.properties中设置此属性并重新启动服务器 您有两种可能性:
如果您正在开发,可以将门户设置为开发模式添加
include and override=portal developer.properties
到您的portal-ext.properties中,它应该位于门户根目录下。
如果您正在生产中,则应禁用此选项,并应检查以下内容 尝试打开SDK中themes文件夹下的XML文件build-common-theme.XML,并删除所有
preservelastmodified=“true”
(或将其设置为false)
preservelastmodified,如果为true,则不会更新主题项目中的文件时间戳。因此,您的应用程序服务器将无法检测到更改并重新部署主题。感谢sharana的帮助。实际上,当我创建新主题时,_diff文件夹是空的,因此我必须强制创建所有内部文件夹,并复制需要覆盖的文件,因此我必须遵循步骤3和步骤4。正如你所说,我在portal_normal.vm文件中做了更改,并使用ant文件build.xml构建了主题,但前面仍然没有反映任何内容。此外,我在属性文件中添加了velocity.engine.resource.manager.cache.enabled=false,正如你所说的。但我不知道哪里出了问题,我看不到前面有什么东西反射出来。我选择了经典的外观主题,这对我的问题有什么影响吗???我完全陷入了这个问题中(好的,那么,当您复制了您所更改的所有文件时?只有portal_normal.vm?当您从经典主题复制文件夹时,请确保您没有将WEB-INF文件夹复制到_diff目录。一旦您构建了文件夹并将其部署到服务器上,您需要单击“管理”,然后转到“查看并感觉更改它们”E到您新创建的主题。让我知道它是如何运行的。我已经改变了PATALL正常。VM和Cuff.CSS。我没有复制Web-INF文件夹。当我从外观上选择我的主题时,CSS没有得到反映。我也准备了我的主题的自定义布局,布局工作正常,但是我如何才能在一个PAR中添加一个Web内容。版面的特定部分。实际上,我无法拖放版面特定部分的内容。当我在主题中添加任何web内容时,它会一个接一个地连续添加,但我想对其重新排序。谢谢您的帮助。:)