小编Jai*_*ung的帖子

捕获Java错误

我听说捕捉java.lang.Error被认为是不好的做法.我目前正在加载一个不保证在PATH上的.dll,并且想要在不是的情况下切换到用户配置的位置.

try {
    System.loadLibrary("HelloWorld");
} catch(UnsatisfiedLinkError ule){
    System.load("C:/libraries/HelloWorld.dll");
}
Run Code Online (Sandbox Code Playgroud)

有没有更好的方法呢?或者是在UnsatisfiedLinkError这里接受?

java error-handling

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

Android的设备政策管理错误

我最近开始探索Android设备策略管理API,并且遇到了一些问题.我只是启用设备管理时遇到问题.我很确定这是清单条目的问题,但是我无法确定问题区域.

清单条目:

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
      package="com.example"
      android:versionCode="1"
      android:versionName="1.0">

    <application android:label="DeviceAdminTrial" android:icon="@drawable/icon" android:debuggable="true">
        <activity android:name=".MyActivity"
                  android:label="@string/app_name">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
        <receiver android:name=".Receiver"
                  android:label="device_admin"
                  android:permission="android.permission.BIND_DEVICE_ADMIN"/>
                  <meta-data android:name="android.app.device_admin"
                             android:resource="@xml/device_admin"  />
                  <intent-filter>
                        <action android:name="android.app.action.DEVICE_ADMIN_ENABLED"/>
                  </intent-filter>
    </application>
</manifest> 
Run Code Online (Sandbox Code Playgroud)

错误信息:

12-25 15:42:38.930: WARN/DeviceAdminAdd(394): Unable to retrieve device policy ComponentInfo{com.example/com.example.Receiver}
        org.xmlpull.v1.XmlPullParserException: No android.app.device_admin meta-data
Run Code Online (Sandbox Code Playgroud)

device_admin.xml

<device-admin xmlns:android="http://schemas.android.com/apk/res/android">
    <uses-policies>
        <limit-password />
        <watch-login />
        <reset-password />
        <force-lock />
        <wipe-data />
    </uses-policies>
</device-admin>
Run Code Online (Sandbox Code Playgroud)

启用方法:

 enable = (Button)findViewById(R.id.button);
        enable.setOnClickListener(new View.OnClickListener()
        {
         public void onClick(View v)
         {
          Intent …
Run Code Online (Sandbox Code Playgroud)

policy android device-admin

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

Java将移动方法的效率提升到另一个类

我目前正在开展一个相当庞大的项目,其中有几个类别超过20,000个线路.这是因为将UI的所有生成的swing代码与所有功能代码混合在一起是一个明智的想法.我想知道在内存或运行时方面是否会产生任何额外成本,将大多数非UI相关功能转移到一个单独的类中.举一个例子,这与我正在构建的内容类似.

public class Class1{
    private Class1Util c1u;
    List<String> infoItems;
    ...
    public void Class1(){
        c1u = new Class1Util(this);
    }
    public void btnAction(ActionListener al){
        ...
        c1u.loadInfoFromDatabase();
    }
}

public class Class1Util{
    private Class1 c;

    public void Class1Util(Class1 c){
        this.c = c;
    }
    public void loadInfoFromDatabase(){
        c.infoItems.add("blah");
    }
}
Run Code Online (Sandbox Code Playgroud)

最后,我还想移动一些像infoItems这样的字段,这会导致反向关系,Class1访问c1u.infoItems.

java

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

Python全局变量用法

我是一个用Python编写的初学者,这对我来自Java来说有点跳跃.我现在的问题是在Python中使用全局变量来表示常量等.在Java中,我们对常量有两种想法,我们可以这样:

private static final HOME_URL_CONST = "localhost:8080";
Run Code Online (Sandbox Code Playgroud)

或者,如果我们需要在运行时分配值:

private static HOME_URL = "";
public void init(){ 
  HOME_URL = "localhost:8080"; 
}
Run Code Online (Sandbox Code Playgroud)

关键是在后一种情况下,一旦设置了静态变量,它就会保持设置状态.但是在Python中,情况并非如此.如果我创建一个全局变量然后在一个函数中分配它,那么该变量将只在该函数内具有指定的值.现在我有这样的事情:

def initialize():
  global HOME_URL
  with open("urls.txt", 'rb') as f:
    HOME_URL = json.load(f.read())['urls']
Run Code Online (Sandbox Code Playgroud)

这是一种可接受的方法吗?或者是否有一些我不知道的反响和副作用?

python

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

Selenium不会在浏览器关闭时删除配置文件

我正在使用browsermob和selenium运行一些相当简单的测试来打开firefox浏览器并浏览随机页面.每个firefox实例都应该是独立的,并且它们都不共享任何cookie或缓存.在我的mac osx机器上,这非常好用.浏览器打开,浏览一堆页面然后关闭.然而,在我的Windows机器上,即使在firefox浏览器关闭之后,tmp**文件夹仍然存在,并且在测试继续进行一段时间之后,它们开始占用大量空间.我的印象是,每个新生成的浏览器都有自己的配置文件,但显然它会删除它在浏览器关闭时创建的配置文件.我是否缺少明确的selenium命令来强制执行此行为?

另外,我注意到一些tmp文件夹出现在AppData/Local/Temp/2中,还有很多其他文件夹出现在我开始运行脚本的文件夹中......

python firefox selenium

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

Android上的Bouncycastle椭圆曲线加密

我正在尝试使用Bouncycastle在Android设备上解密X509证书.但是,我一直在努力

java.lang.RuntimeException: algorithm identifier 1.2.840.10045.2.1 in key not recognised.
Run Code Online (Sandbox Code Playgroud)

但是,当我在自己的计算机上运行完全相同的代码时,它的工作完全正常.Android是否用一个过时的版本覆盖了一些bouncycastle库?

java android bouncycastle

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

ZXing Result.getRawBytes(),究竟是什么?

我正在使用zxing QR代码API,我正在尝试从Android设备上的QR代码中提取二进制数据.但是,在android上,Result.getResultMetadata()没有通过Intent传递给我,所以我尝试使用Result.getRawBytes()来检索我的字节数组.但是,getRawBytes()似乎没有返回相同的东西.

究竟是什么Result.getRawBytes()并且有谁知道如何正确地从zxing QR码中提取字节数组?

谢谢

java android zxing

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

红宝石的继承与延伸

我一直在玩ruby,对我的继承和mixin有一点了解.请考虑以下代码:

module Base
  class Parent
    def foo
      "hello parent"
    end
  end

  module Extension
    module Extender
      def bar
        "hello extended"
      end
    end
  end
  module Tasks
    class Child < Base::Parent
      extend Base::Extension::Extender
      def blah
        puts "blah"
        puts foo
        puts self.bar
      end
    end
  end
end

Base::Tasks::Child.new().blah
Run Code Online (Sandbox Code Playgroud)

blah在'bar'失败,声称它未定义.这样做的上下文是我想使用Parent中的方法,但是也可以从Extender中提取一些可能在Parent中使用的选项和/或配置.有了这个设置,我希望bar可以作为一个类变量被引入Child,但很明显,它不是.

是否有更好的方法来组织这个,或者我误解了扩展如何工作?

ruby ruby-on-rails

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

在Glassfish Web部署之后执行代码

我正在尝试在Glassfish上运行java Web服务.有一些初始化代码可以设置一些变量并从Glassfish环境本身检索一些信息.我在@WebService类的静态初始化程序中有这个代码,但是这个代码看起来太早了,它在部署WebService端点后立即运行,而我需要在整个Web服务成功部署后运行它.

我尝试将代码移动到WebService类的构造函数中,然后该代码仅在我进入Tester Web页面并发送一些数据以运行Web方法时运行.

有没有办法在整个Web服务部署完成后立即设置一些初始化代码?

java deployment web-services glassfish web-deployment

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