找不到使用Gradle 4.3.1编译的方法

找不到使用Gradle 4.3.1编译的方法,gradle,liferay,liferay-dxp,Gradle,Liferay,Liferay Dxp,在Liferay Developer Studio 3.1.2中,我创建了一个“新建>Liferay工作区项目” 在它里面,我创建了一个“New>Liferay模块项目” 下面是它的外观: 问题:模块项目上没有渐变右键单击菜单 从命令行运行Gradle时,我得到: $ gradle --version ------------------------------------------------------------ Gradle 4.3.1 ----------------------

在Liferay Developer Studio 3.1.2中,我创建了一个“新建>Liferay工作区项目”

在它里面,我创建了一个“New>Liferay模块项目”

下面是它的外观:

问题:模块项目上没有渐变右键单击菜单

从命令行运行Gradle时,我得到:

$ gradle --version

------------------------------------------------------------
Gradle 4.3.1
------------------------------------------------------------

Build time:   2017-11-08 08:59:45 UTC
Revision:     e4f4804807ef7c2829da51877861ff06e07e006d

Groovy:       2.4.12
Ant:          Apache Ant(TM) version 1.9.6 compiled on June 29 2015
JVM:          1.8.0_151 (Oracle Corporation 25.151-b12)
OS:           Linux 4.4.0-101-generic amd64

$ gradle build
Starting a Gradle Daemon (subsequent builds will be faster)

FAILURE: Build failed with an exception.

* Where:
Build file '/home/nico/training-workspace/training/modules/doc-media-fragment/build.gradle' line: 2

* What went wrong:
A problem occurred evaluating root project 'doc-media-fragment'.
> Could not find method compileOnly() for arguments [{group=org.osgi, name=org.osgi.core, version=6.0.0}] on object of type org.gradle.api.internal.artifacts.dsl.dependencies.DefaultDependencyHandler.
我做错了什么?
如何解决这个问题

Liferay工作区根目录下的
build.gradle
为空,下面是Liferay模块根目录下的
build.gradle

dependencies {
    compileOnly group: "org.osgi", name: "org.osgi.core", version: "6.0.0"
    compileOnly group: "org.osgi", name: "org.osgi.service.component.annotations", version: "1.3.0"
}

创建settings.gradle并添加以下内容


settings.gradle通常包含用于执行构建和部署liferay模块的最小liferay gradle插件。我已经贴了这个作为回答。同时在liferay工作区根目录中授予gradlew权限。chmod 777 training/gradlew

您可以通过导航到node_modules/react native maps/lib/android/build.gradle并更改这些行来修复此问题

compileOnly "com.facebook.react:react-native:+"
implementation "com.google.android.gms:play-services-base:$googlePlayServicesVersion"
implementation "com.google.android.gms:play-services-maps:$googlePlayServicesVersion"
implementation "com.google.maps.android:android-maps-utils:$androidMapsUtilsVersion"


并查看项目是否生成。

您能粘贴您的生成吗。gradlea培训文件夹下是否有settings.gradle?@Rajesh:已添加。顺便说一下,创建另一个Liferay工作区解决了这个问题,但我不确定这是否符合解决方案的条件?理想情况下,根工作区中应该有settings.gradle。您还可以尝试使用“blade gw deploy”而不是“gradle build”@Rajesh:我在Liferay工作区的根目录下没有
设置.gradle
。我刚刚尝试执行了
blade gw deploy
,它说
gradlew:Permission denied
,并生成了一些文件,包括
settings.gradle
compileOnly "com.facebook.react:react-native:+"
implementation "com.google.android.gms:play-services-base:$googlePlayServicesVersion"
implementation "com.google.android.gms:play-services-maps:$googlePlayServicesVersion"
implementation "com.google.maps.android:android-maps-utils:$androidMapsUtilsVersion"
provided "com.facebook.react:react-native:+"
compile "com.google.android.gms:play-services-base:$googlePlayServicesVersion"
compile "com.google.android.gms:play-services-maps:$googlePlayServicesVersion"
compile "com.google.maps.android:android-maps-utils:$androidMapsUtilsVersion"