Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
无法在Liferay Portal 6.0上设置自动部署目录_Liferay_Liferay 6 - Fatal编程技术网

无法在Liferay Portal 6.0上设置自动部署目录

无法在Liferay Portal 6.0上设置自动部署目录,liferay,liferay-6,Liferay,Liferay 6,我正在JBoss 5.1.1上使用Liferay 6.0,Windows 8是操作系统。在服务器启动时,我总是遇到以下错误,说明找不到自动部署目录: ERROR [AutoDeployDir:90] Directory F:\liferay-portal-ee-6.0\deploy could not be created 这是有道理的,因为我没有F:驱动器。但是,我无法在portal-ext.properties文件中对其进行配置。当我登录Liferay控制面板并查看门户管理->门户属性时,

我正在JBoss 5.1.1上使用Liferay 6.0,Windows 8是操作系统。在服务器启动时,我总是遇到以下错误,说明找不到自动部署目录:

ERROR [AutoDeployDir:90] Directory F:\liferay-portal-ee-6.0\deploy could not be created

这是有道理的,因为我没有F:驱动器。但是,我无法在
portal-ext.properties
文件中对其进行配置。当我登录Liferay控制面板并查看门户管理->门户属性时,我可以看到我在
ext.Properties
中输入的值确实显示为
auto.deploy.deploy.dir
的值。但是,当服务器启动时,它使用
F:\liferay-portal-ee-6.0\deploy
作为自动部署目录,并记录上述错误。我已经调试了初始化Liferay的自动部署的
GlobalStartupAction
类,我可以看到它正在调用
PrefsPropsUtil.getString(String,String)
来检索自动部署目录的值,并将我在
portal-ext.properties
中设置的值作为第二个参数传递,根据第二个参数,第二个参数是默认值。当我深入研究
PrefsPropsUtil.getString
调用时,我可以看到它正在使用
portalReferencesLocalServiceImpl
的一个实例来检索属性列表,这些属性分别由
companyId
ownerId
ownerType
设置为0、0和1。由于
portalReferencesLocalServiceImpl
是“本地”的,因此我假设它不会到其他机器检索值。我已经对
auto.deploy.deploy.dir
F:\liferay-portal-ee-6.0
之类的值进行了广泛的目录和文件搜索,我无法确定该属性的设置位置。此值来自何处?为什么不使用我的覆盖?

既然您使用的是Liferay 6.0,请转到控制面板->插件安装->安装更多portlet->配置

在配置选项卡中,您可能会看到部署目录设置为F:\liferay-portal-ee-6.0\Deploy


这可能是因为有人修改了控制面板中的值,或者您正在使用其他现有Liferay安装中的数据库转储。

您可以使用portal-ext.properties中的auto.deploy.dest.dir属性设置自动部署路径

i、 e


HTH

谢谢,这节省了我搜索UI的大量时间。似乎只有在Liferay控制面板中设置自动部署时,自动部署才起作用。我想使用portal-ext.properties配置自动部署,但当我从Liferay控制面板中删除自动部署目录值时,它不会使用我在portal-ext.properties中输入的值。您知道如何让Liferay使用我在portal-ext.properties中设置的自动部署目录吗?一旦您从控制面板设置了自动部署目录,它将始终使用控制面板的值。正如您之前正确调试的那样,它使用PrefsPropsUtil,它首先检查数据库中是否有属性值,如果有,则使用它,否则使用属性文件中的默认值。由于您已经从控制面板设置了该值,所以该值将持久保存在数据库中,这就是它将使用的内容。如果您希望从属性文件中读取该值,唯一的选择是小心地从数据库中删除该记录。(请在执行任何此类操作之前进行备份)
auto.deploy.dest.dir=C:/../../autodeploy