小编Tia*_*oso的帖子

Eclipse JDT教程

这是以编程方式编写Java的后续问题

我正在寻找JDT构建一个独立的应用程序(而不是一个eclipse插件)来编程编写JUnit测试类.

我想知道我的意图是否可行.

另外我想知道一些让我入门的教程,我上一期提出的教程对我来说似乎有点先进.

eclipse-jdt

3
推荐指数
1
解决办法
3190
查看次数

IllegalArgumentException:错误消息没有意义

我正在尝试调试依赖反射的Java应用程序。现在我得到的错误如下:

java.lang.IllegalArgumentException: Can not set int field DataStructures.StackAr.topOfStack to java.lang.Integer
    at sun.reflect.UnsafeFieldAccessorImpl.throwSetIllegalArgumentException(UnsafeFieldAccessorImpl.java:146)
    at sun.reflect.UnsafeFieldAccessorImpl.throwSetIllegalArgumentException(UnsafeFieldAccessorImpl.java:150)
    at sun.reflect.UnsafeFieldAccessorImpl.ensureObj(UnsafeFieldAccessorImpl.java:37)
    at sun.reflect.UnsafeIntegerFieldAccessorImpl.getInt(UnsafeIntegerFieldAccessorImpl.java:38)
    at sun.reflect.UnsafeIntegerFieldAccessorImpl.get(UnsafeIntegerFieldAccessorImpl.java:18)
    at java.lang.reflect.Field.get(Field.java:358)
Run Code Online (Sandbox Code Playgroud)

正在运行的应用程序的最后几行是:

Field f = classUnderTest.getDeclaredField(processFieldName(var));
f.setAccessible(true);
Long value = (Long) f.get(runtimeInstance);
Run Code Online (Sandbox Code Playgroud)

错误消息有点令人误解,我不确定为什么它在提及要set执行的操作时却提到了操作get

我怀疑runtimeInstance并非预期类别的对象。但是,该错误消息使我不知所措。

有人遇到过这个问题吗?有什么线索吗?

PS1:导致异常的确切行是此行:

Long value = (Long) f.get(runtimeInstance);
Run Code Online (Sandbox Code Playgroud)

PS2:processFieldName(var)处理字段的正确名称,即,它从字段名称为this.等等的字符串中删除一些伪像。

java reflection

3
推荐指数
1
解决办法
6705
查看次数

Android应用程式仅针对一项活动启用NFC

是否可以为启用NFC的应用程序仅在android中启用一项活动的NFC?

我读过这篇文章, 仅从特定活动中读取NFC标签

但是设备仍在扫描应用程序所有活动上的标签。

编辑:

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.example.nfccheckout" >

    <uses-feature
        android:name="android.hardware.nfc"
        android:required="true" />

    <uses-permission android:name="android.permission.NFC" />

    <application
        android:allowBackup="true"
        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name"
        android:theme="@style/AppTheme" >
        <activity
            android:name=".activities.MainActivity"
            android:label="@string/app_name" >
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
        <activity
            android:name=".activities.ReceiveActivity"
            android:label="@string/title_activity_receive" >
            <intent-filter>
                <action android:name="android.nfc.action.NDEF_DISCOVERED" />
                <category android:name="android.intent.category.DEFAULT" />
                <data android:mimeType="application/json+com.example.nfccheckout" />
            </intent-filter>
        </activity>
        <activity
            android:name=".activities.CreatePayloadActivity"
            android:label="@string/title_activity_create_payload" >
        </activity>
        <activity
            android:name=".activities.ConfirmationActivity"
            android:label="@string/title_activity_confirmation" >
        </activity>
    </application>

</manifest>
Run Code Online (Sandbox Code Playgroud)

tags android nfc intentfilter android-intent

3
推荐指数
1
解决办法
4979
查看次数

Bash脚本知道命令的结果

我正在编写一个bash脚本来运行我正在编写的工具的集成测试.

基本上我使用一组输入运行应用程序,并使用diff命令行工具将结果与期望值进行比较.

它有效,但我想通过了解diff命令的结果来增强它,并根据diff的结果打印"SUCCESS"或"FAIL".

我该怎么做?

bash diff integration-testing

2
推荐指数
2
解决办法
5153
查看次数

随机化大写字母

有一个简单的方法,一句话String,随机大写字母?

例:

换句话说,super我会得到SuPErSUpER.

我正在寻找一个Java解决方案.

java string random

2
推荐指数
1
解决办法
1807
查看次数

Gradle找不到文件/目录

我正在尝试使用Gradle开始运行jar文件

我的任务如下:

task startServer(type: Exec) {
  workingDir file("${buildDir}/aux/server/server-S31-SNAPSHOT")
  commandLine 'java -client -d64 -Xms256M -Xmx512M -DisableExplicitGC -XX:MaxPermSize=128M -jar server-S31-SNAPSHOT.jar'
}
Run Code Online (Sandbox Code Playgroud)

而我的文件夹和文件实际上就在那里.

我能跑了

cd 'path/to/file'
java -client -d64 -Xms256M -Xmx512M -DisableExplicitGC -XX:MaxPermSize=128M -jar server-S31-SNAPSHOT.jar
Run Code Online (Sandbox Code Playgroud)

正好.

但是gradle返回的异常是找不到文件或目录:

org.gradle.api.tasks.TaskExecutionException: Execution failed for task ':netmedepro-android:startServer'.
    at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeActions(ExecuteActionsTaskExecuter.java:69)
    at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.execute(ExecuteActionsTaskExecuter.java:46)
    at org.gradle.api.internal.tasks.execution.PostExecutionAnalysisTaskExecuter.execute(PostExecutionAnalysisTaskExecuter.java:35)
    at org.gradle.api.internal.changedetection.state.CacheLockReleasingTaskExecuter$1.run(CacheLockReleasingTaskExecuter.java:35)
    at org.gradle.internal.Factories$1.create(Factories.java:22)
    at org.gradle.cache.internal.DefaultCacheAccess.longRunningOperation(DefaultCacheAccess.java:179)
    at org.gradle.cache.internal.DefaultCacheAccess.longRunningOperation(DefaultCacheAccess.java:232)
    at org.gradle.cache.internal.DefaultPersistentDirectoryStore.longRunningOperation(DefaultPersistentDirectoryStore.java:142)
    at org.gradle.api.internal.changedetection.state.DefaultTaskArtifactStateCacheAccess.longRunningOperation(DefaultTaskArtifactStateCacheAccess.java:83)
    at org.gradle.api.internal.changedetection.state.CacheLockReleasingTaskExecuter.execute(CacheLockReleasingTaskExecuter.java:33)
    at org.gradle.api.internal.tasks.execution.SkipUpToDateTaskExecuter.execute(SkipUpToDateTaskExecuter.java:58)
    at org.gradle.api.internal.tasks.execution.ContextualisingTaskExecuter.execute(ContextualisingTaskExecuter.java:34)
    at org.gradle.api.internal.changedetection.state.CacheLockAcquiringTaskExecuter$1.run(CacheLockAcquiringTaskExecuter.java:39)
    at org.gradle.internal.Factories$1.create(Factories.java:22)
    at org.gradle.cache.internal.DefaultCacheAccess.useCache(DefaultCacheAccess.java:124)
    at org.gradle.cache.internal.DefaultCacheAccess.useCache(DefaultCacheAccess.java:112)
    at org.gradle.cache.internal.DefaultPersistentDirectoryStore.useCache(DefaultPersistentDirectoryStore.java:134)
    at org.gradle.api.internal.changedetection.state.DefaultTaskArtifactStateCacheAccess.useCache(DefaultTaskArtifactStateCacheAccess.java:79)
    at org.gradle.api.internal.changedetection.state.CacheLockAcquiringTaskExecuter.execute(CacheLockAcquiringTaskExecuter.java:37)
    at org.gradle.api.internal.tasks.execution.ValidatingTaskExecuter.execute(ValidatingTaskExecuter.java:57) …
Run Code Online (Sandbox Code Playgroud)

gradle

2
推荐指数
1
解决办法
2543
查看次数

Realm:从 ObjC 迁移到 Swift

我有一个用 ObjC 编写的应用程序。我选择了 Realm 作为我的数据库。

我想开始将我的应用程序的某些部分迁移到 Swift。

到达 Realm 时,我感到很困惑。

有两个pods。根据我从文档中的理解,RealmSwift 用于纯 Swift 项目,对吗?

但是,是否可以在没有 RealmSwift 的情况下将模型类迁移到 Swift pod

objective-c realm ios swift

2
推荐指数
1
解决办法
422
查看次数

核心数据和Grand Central调度内部不一致

我正在使用iOS 5开发iOS应用程序.

我无法使用宏中央调度来填充GMGridViewCell的视图.

问题不在于GridCell本身,而是在GCD中访问数据.

这是我的代码:

- (GMGridViewCell *)GMGridView:(GMGridView *)gridView cellForItemAtIndex:(NSInteger)index
{
    //NSLog(@"Creating view indx %d", index);

    CGSize size = [self sizeForItemsInGMGridView:gridView];

    GMGridViewCell *cell = [gridView dequeueReusableCell];

    if (!cell) 
    {
        cell = [[GMGridViewCell alloc] initWithFrame:CGRectMake(0, 0, size.width, size.height)];
    }

    [[cell.contentView subviews] makeObjectsPerformSelector:@selector(removeFromSuperview)];

    dispatch_queue_t fillCellQueue = dispatch_queue_create("Cell fetch queue", NULL);
    dispatch_async(fillCellQueue, ^{
        SearchGridViewCell *cellView = [UIView loadFromNib:@"SearchGridViewCell" owner:self];
        Item *item = [self.foundItems objectAtIndex:index];

        cellView.itemImageView.image = [UIImage imageWithData:item.image.thumb];

        cellView.itemNameLabel.text  = item.name; 

        cellView.brandImageView.image = [UIImage imageWithData:item.group3.image.thumb];

        Attribute *itemAttribute = [item.attributes objectAtIndex:0];
        cellView.attributeLabel.text  = [itemAttribute.name …
Run Code Online (Sandbox Code Playgroud)

core-data grand-central-dispatch ios

1
推荐指数
1
解决办法
2293
查看次数

在应用程序启动时了解iPad的界面方向

我试图弄清楚我的iPad在平板电脑上启动时的方向.

我总是说它是以肖像模式开始的,但事实并非如此.

我已经使用此处采样的代码来检测启动时的方向.

碰巧的是,当我的设备面朝上在平面上时,它声称它处于纵向模式.但是状态栏在视觉上处于横向模式.

有没有解决的办法?

我使用的是iOS 5和Xcode 4.3.

编辑:更多细节

这是我的更新定位方法:

- (void)updateOrientation {

    UIInterfaceOrientation iOrientation = self.interfaceOrientation;//[[UIApplication sharedApplication] statusBarOrientation];
    UIDeviceOrientation dOrientation = [UIDevice currentDevice].orientation;

    bool landscape;

    if (dOrientation == UIDeviceOrientationUnknown || dOrientation == UIDeviceOrientationFaceUp || dOrientation == UIDeviceOrientationFaceDown) {
        // If the device is laying down, use the UIInterfaceOrientation based on the status bar.
        landscape = UIInterfaceOrientationIsLandscape(iOrientation);
    } else {
        // If the device is not laying down, use UIDeviceOrientation.
        landscape = UIDeviceOrientationIsLandscape(dOrientation);

        // There's a bug in …
Run Code Online (Sandbox Code Playgroud)

orientation ipad

1
推荐指数
1
解决办法
1608
查看次数

如何用Objective C中的给定字符串替换正则表达式的组1

我有以下正则表达式

regex = [NSRegularExpression regularExpressionWithPattern:@"(.*)|(.*)"
                                                  options:NSRegularExpressionCaseInsensitive
                                                    error:&error];
Run Code Online (Sandbox Code Playgroud)

我想用文本字段中的值替换匹配此正则表达式的第一组字符串.

例如,如果我有,Hi|Peter并替换Goodbye我得到Goodbye|Peter

我怎样才能做到这一点?

regex objective-c ios

1
推荐指数
1
解决办法
1998
查看次数