Articles of jenkins

在Jenkins中显示Android Lint结果

如何在Jenkins中显示Android Lint的结果,例如警告? 我想浏览Jenkins GUI中的警告,就像编译器警告和PMD / Checkstyle警告一样。 Jenkins作业的输出是这样的: [exec] [exec] Scanning org.digitalcure.ccnf.app: ……….Incorrect detector reported disabled issue TooManyViews [exec] Incorrect detector reported disabled issue TooManyViews [exec] … [exec] [exec] Scanning org.digitalcure.android.common: … [exec] res/values/strings.xml: Warning: The resource R.string.display_unit_abc appears to be unused [UnusedResources] [exec] res/values/strings.xml: Warning: The resource R.string.edit_error_abc appears to be unused [UnusedResources] [exec] Warning: […]

Android-Jenkins:在Jenkins Build Server上找不到Build Tools修订版17.0.0

我正在尝试在Jenkins上使用Android模拟器来构建和测试我的项目。 但是在运行我的gradle任务时出现以下错误; 找不到Build Tools修订版17.0.0 我正在运行的gradle任务是; ./gradlew clean connectedCheck 在我的gradle构建文件中,我有以下配置 android { compileSdkVersion 17 buildToolsVersion “17.0.0” defaultConfig { minSdkVersion 7 targetSdkVersion 17 } } 构建服务器是一个无头的Ubuntu实例(12个东西)。 我的第一个想法是我没有安装正确的构建工具,所以我看看我的android-sdk / build-tools导演。 我只能看到一个名为18.1.1的目录。 所以我想如果我更新了我的android sdk它将下载版本17.0.0。 所以我运行了以下命令: android update sdk –no-ui 它似乎下载了很多东西,但再次查看构建工具目录,我仍然只看到版本18.1.1。 所以问题是: 1)我是否正确地假设构建失败,因为我的android sdk目录中没有正确的构建工具修订版? (/ Android的SDK /构建工具) 2)如何在无头服务器上更新构建工具,以便我有17.0.0版本? 如果您需要我提供更多信息,请告诉我。 在此先感谢您的帮助。

仅使用Jenkins构建的Android ZBarexception

我有一个带有QR扫描活动的android项目。 我使用ZBar库: http : //sourceforge.net/projects/zbar/files/AndroidSDK/ 如果项目是在带有exlipse的PC或Mac上构建的,那么该应用程序可以正常工作。 如果它是由jenkins构建的(来自git的相同来源)应用程序崩溃。 我得到的例外是: at controller.gui.activity.QRScanActivity.onCreate(Unknown Source) at android.app.Activity.performCreate(Activity.java:4465) at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1049) at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1920) at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1981) at android.app.ActivityThread.access$600(ActivityThread.java:123) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1147) at android.os.Handler.dispatchMessage(Handler.java:99) at android.os.Looper.loop(Looper.java:137) at android.app.ActivityThread.main(ActivityThread.java:4424) at java.lang.reflect.Method.invokeNative(Native Method) at java.lang.reflect.Method.invoke(Method.java:511) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:784) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:551) at dalvik.system.NativeStart.main(Native Method) Caused by: java.lang.NoSuchFieldError: no field with name=’peer’ signature=’J’ in class Lnet/sourceforge/zbar/ImageScanner; at net.sourceforge.zbar.ImageScanner.init(Native Method) […]

在Jenkins(Gradle)上运行androidunit testing和仪器测试

我的androidTest文件夹中有一些单元和仪器测试。 我正试图在我当地的jenkins上运行这些测试。 我已经用Jenkins成功配置了我的项目,并且我还为仪器测试创建了一个模拟器。 到目前为止,我所看到的所有资源都只关注ant和早期版本的Gradle。 编写任务的语法在当前版本中略有变化,我对此感到困惑。 这是我的build.gradle文件: apply plugin: ‘com.android.application’ android { compileSdkVersion 21 buildToolsVersion “21.1.2” defaultConfig { applicationId “myPackageName” minSdkVersion 16 targetSdkVersion 21 versionCode 1 versionName “1.0” } buildTypes { release { minifyEnabled false proguardFiles getDefaultProguardFile(‘proguard-android.txt’), ‘proguard-rules.pro’ } } } dependencies { compile ‘com.android.support:appcompat-v7:21.0.3’ compile ‘com.google.android.gms:play-services:6.5.87’ }

用jenkins建造时没有findKotlin类

在我的机器上本地我的应用程序成功构建并在单击打开Kotlin活动时正常工作,如: galleryLayout.setOnClickListener(view -> startActivity(new Intent(PreferencesActivity.this, GalleryActivity.class))); 但在成功构建Jenkins CI之后,单击操作将使应用程序崩溃: Fatal Exception: java.lang.NoClassDefFoundError: Failed resolution of: Lcom/noodoe/sunray/settings/preferences/gallery/GalleryActivity; at com.noodoe.sunray.settings.preferences.PreferencesActivity.lambda$setupListener$9(PreferencesActivity.java:248) at com.noodoe.sunray.settings.preferences.PreferencesActivity.access$lambda$9(PreferencesActivity.java) at com.noodoe.sunray.settings.preferences.PreferencesActivity$$Lambda$10.onClick(Unknown Source) at android.view.View.performClick(View.java:5226) at android.view.View$PerformClick.run(View.java:21266) at android.os.Handler.handleCallback(Handler.java:739) at android.os.Handler.dispatchMessage(Handler.java:95) at android.os.Looper.loop(Looper.java:168) at android.app.ActivityThread.main(ActivityThread.java:5845) at java.lang.reflect.Method.invoke(Method.java) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:797) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:687) Caused by java.lang.ClassNotFoundException: Didn’t find class “com.noodoe.sunray.settings.preferences.gallery.GalleryActivity” on path: DexPathList[[zip file “/data/app/com.noodoe.sunray.alpha-1/base.apk”],nativeLibraryDirectories=[/data/app/com.noodoe.sunray.alpha-1/lib/arm, /data/app/com.noodoe.sunray.alpha-1/base.apk!/lib/armeabi-v7a, /vendor/lib, /system/lib]] […]

如何做Cucumber Android集成测试?

我正在尝试与Android项目和Cucumber建立持续集成。 我的想法是在Cucumber中编写测试,并通过Cuke4Duke和NativeDriver for Android在我的Android版本上运行测试。 当我运行时,我计划使用Maven和Jenkins服务器来自动化测试,所以每次我提交Subversion repo时它都会运行。 以前做过吗? 某处有好的指南吗? 或者这样做是不是一个坏主意?

Jenkins上的Android模拟器错误:设备离线

我已经为Jenkins安装了Android Emulator插件。 我可以构建和测试Android项目。 我的Jenkins运行在Ubuntu服务器上(仅限终端访问)。 该项目是从Github撤出的。 现在我想使用模拟器。 这是我的配置: Android操作系统版本:4.4 屏幕密度:160 屏幕分辨率:480×800 目标ABI:armeabi-v7a 我还安装了adb并执行了以下命令: /opt/android-sdk-linux/tools/android update sdk –no-ui 但它不起作用: > /usr/bin/git rev-list 3440b28279e2e95113ce1c9499d9d881e76f6810 # timeout=10 $ /opt/android-sdk-linux/tools/android list target [android] Using Android SDK: /opt/android-sdk-linux $ /opt/android-sdk-linux/platform-tools/adb start-server * daemon not running. starting it now on port 7767 * * daemon started successfully * $ /opt/android-sdk-linux/platform-tools/adb start-server [android] […]

防止产品风格影响Android Studio中的构建时间

我的应用目前有5种不同的产品口味。 原因并非如此重要,在我的控制之下,但基本上我们需要这么多产品口味来针对具有不同测试数据的不同测试服务器。 prod { applicationId “com.us.android” } stage { applicationId “com.us.android.stage” } qa { applicationId “com.us.android.qa” } dev { applicationId “com.us.android.dev” } legacy { applicationId “com.us.android.legacy” } 我遇到的问题是每当我创建一个新构建时,所有产品风格都会被构建。 因此,对于我的项目构建它需要大约50秒,如果我要评论所有,但我关心的构建时间下降到大约10秒。 如果它只是我,那么评论它们是很好的,但是如果我不小心提交了已注释的版本,当我们尝试在其他地方构建时,这将导致更多问题。 我的问题是,是否有任何干净的方法可以使它在本地开发中只构建我需要的构建,但我仍然可以根据需要构建其他分支? 我们正在使用Jenkins,我认为它可以帮助我们在不需要担心它们的情况下获得这些构建,但我不确定如何。 编辑:这是一些日志,因为这可能会有所帮助。 这是我们拥有所有产品风格但是,构建variables设置为stageDebug: Executing tasks: [:us:assembleStageDebug] Parallel execution with configuration on demand is an incubating feature. :api:compileJava :datePickerLibrary:compileLint :us:preBuild UP-TO-DATE :us:preStageDebugBuild UP-TO-DATE :datePickerLibrary:copyReleaseLint UP-TO-DATE […]

Gradle安装有代理问题

我正在讨论在Jenkins上的代理后面的公司网络中的服务器上构建android项目的问题。 尝试过jenkins gradle以及gradlew。 以下是打开调试模式后的错误消息。 17:12:31 17:12:40.482 [INFO] [com.android.build.gradle.internal.DependencyManager] Parsing /opt/android/tools/package.xml 17:12:32 17:12:42.383 [DEBUG] [org.gradle.launcher.daemon.server.Daemon] DaemonExpirationPeriodicCheck running 17:12:42 17:12:52.384 [DEBUG] [org.gradle.cache.internal.DefaultFileLockManager] Waiting to acquire shared lock on daemon addresses registry. 17:12:42 17:12:52.384 [DEBUG] [org.gradle.cache.internal.DefaultFileLockManager] Lock acquired. 17:12:42 17:12:52.384 [DEBUG] [org.gradle.cache.internal.DefaultFileLockManager] Releasing lock on daemon addresses registry. 17:12:46 17:12:55.512 [WARN] [com.android.build.gradle.internal.DependencyManager] Failed to connect to host: https://dl.google.com/android/repository/addons_list-3.xml […]

继续与Jenkins集成React Native(iOS + Android)项目

可以使用Jenkins为React Native应用程序实现Continuos Integration吗? 我还没有find这样做的指南。 如果还有其他解决方案,最好的解决方案是什么? 另外,iOS项目必须使用Mac OS机器吗?