我试图使用Jake Wharton开发的 Hugo库。
我添加了声明:
compile 'com.jakewharton.hugo:hugo-plugin:1.2.1'
在应用级别的 build.gradle 文件中的依赖项。
然后,当我尝试使用@DebugLog
对我的方法进行注释时,它显示为红色,就像IDE无法识别它一样。
我尝试输入一个导入语句,如:
import com.jakewharton.hugo;
但导入语句的jakewharton
部分显示为红色,表示它没有看到它。
我用谷歌搜索过,发现如下参考文献:
classpath 'com.jakewharton.hugo:hugo-plugin:1.2.1'
我不确定编译和类路径之间的区别是什么。
另外,我看到了对:
的引用 apply plugin: 'hugo'
应该去哪儿?
你可以看到我完全迷失了。关于如何使这项工作的任何想法都非常有用。
答案 0 :(得分:8)
我不确定您是在引用app模块build.gradle还是项目级build.gradle。
但最终,我把它全部放在app模块build.grade中,它对我有用。这就是文件的样子:
buildscript {
repositories {
mavenCentral()
}
dependencies {
classpath 'com.jakewharton.hugo:hugo-plugin:1.2.1'
}
}
apply plugin: 'com.android.application'
apply plugin: 'com.jakewharton.hugo'
android {
compileSdkVersion 22
buildToolsVersion "22.0.1"
defaultConfig {
applicationId "com.example.app_name"
minSdkVersion 21
targetSdkVersion 22
versionCode 1
versionName "1.0"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
}
dependencies {
compile fileTree(include: ['*.jar'], dir: 'libs')
}
答案 1 :(得分:1)
正确的配置在build.gradle
文件中如下所示:
apply plugin: 'com.android.application'
apply plugin: 'com.jakewharton.hugo'
buildscript {
repositories {
mavenCentral()
}
dependencies {
classpath 'com.jakewharton.hugo:hugo-plugin:1.2.1'
}
}
dependencies {
// Other dependencies
}
没有必要将Hugo添加到第二个dependencies
部分,这是由插件完成的。
答案 2 :(得分:0)
我遇到了同样的问题,但意识到我有$san_field = 'sometext PROS sometext sometext1234 CALEND 2007 RIT';
$pattern = '/(\s|^|- |--)(CALEND(?! 2007 RIT)|2007|CALEND 2007 RIT)(--| -|\s|$)/i'
echo preg_replace($pattern, ' ', $san_field)
两次打字。一旦我删除了额外的引用,将Jake Wharton的东西放在build.gradle(app)的顶部,就删除了红线。