小编GKe*_*lly的帖子

一些D模板问题

我最近一直在玩D语言,我有一个关于模板的快速问题.

我将字符和字符串插入到代码中的现有字符串中,并提出了以下函数:

string insert(T)(string s1, T s2, uint position) {
    return s1[0 .. position] ~ s2 ~ s1[position .. $];
}
Run Code Online (Sandbox Code Playgroud)

现在,我有几个问题.

  1. 我可以限制s2参数允许的类型(我只想要char,wchar,dchar等以及它们各自的数组值)吗?

  2. 是否有某种方法可以定义模板以自动知道如果位置arg为0则预先添加?像这样的东西(不编译,但给出一般的想法):

    string insert(T)(string s1, T s2, uint position) {
      static if (position == 0)
        return "" ~ s2 ~ s1;
      else
        return s1[0 .. position] ~ s2 ~ s1[position .. $];
    }
    
    Run Code Online (Sandbox Code Playgroud)

谢谢

templates d

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

适用于Github企业的IntelliJ IDEA Github插件

我们在公司使用github的企业实例.该实例托管在https://github.company.com.

在Github插件中,如果我输入"github.company.com"和我的登录凭据,然后选择"测试",则插件会报告给定凭据的失败.

我知道凭据是正确的.我也尝试过' https://github.company.com '作为主机(虽然我已经读过这个插件假设https的地方),同样的失败.

我使用IntelliJ IDEA 12.0.4和捆绑的Github插件.IDEA正在Linux Mint 14工作站上运行(如果这有任何区别).

任何想法(没有双关语)?

谢谢

github intellij-idea

6
推荐指数
0
解决办法
1452
查看次数

有没有办法在IntelliJ Idea的编辑器视图中显示单元测试所涵盖的行?

我知道您可以配置Idea以在单独的视图中显示测试覆盖率,但是有没有办法在主编辑器屏幕中显示覆盖范围.

例如,我在左侧看到行号,在[]中有一个绿色或红色的小数字,表示针对此行运行的单元测试次数.

可能类似于此处显示的编辑器部分(Eclipse) - http://www.copperykeenclaws.com/wp-content/uploads/2010/10/emma_eclipse2.png.

这可能吗?是否有插件来实现这一目标?

我正在使用IntelliJ覆盖工具和Idea 12.0.4(build 129.549)

谢谢

unit-testing code-coverage intellij-idea

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

Maven隐式'提供'依赖关系未在'dependency:tree'中显示

一位同事正试图建立一个新的Spring项目.该项目明确依赖于spring-security,而spring(安全)又依赖于wss4j.运行测试时,他遇到了缺少课程的问题.

我们已经将缺少的类跟踪到了ax-saaj,这是wss4j的"提供的"范围依赖.当我运行dependency:treemaven目标时,它不会被列为项目的依赖项.

我的"规定"的理解是这样的:它是由Maven的用于构建解决,但不包括在交付,也不由Maven的任何"跑"阶段提供(在classpath)(运行测试,也没有运行应用程序本身基于Maven) .

因此,如果"提供"依赖项隐含在您的项目中,Maven会完全忽略它,因为它实际上并没有构建依赖于"提供"工件的可交付项,而是由您来为运行时提供它.

我已经测试并dependency:tree列出了提供的依赖项,如果它们是项目的显式依赖项,但是如果它们低于依赖项树则不会.

我已经告诉他现在要将依赖项作为一个显式的(作用域'运行时')包含在内,但显然这会在完整的运行时环境中引起问题(它没有"提供"任何内容),但我们需要知道依赖关系明确包含它们.有谁知道如何获得项目的完整依赖列表?

谢谢

PS.我知道我也可以让他明确地依赖'axis-saaj'和'test'的范围,但这不是问题,列出依赖关系是!

PPS.我们正在使用Maven 3

购买力平价.我没有在这里包含任何pom文本,因为它会花太长时间.您可以通过创建项目显式依赖于(groupId)org.springframework.ws,(artifactId)spring-ws-security,(version)2.0.0.RELEASE来看到这一点.

maven

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

最终成员在声明中分配常量是否在运行时优化到'静态最终版?

当我在Java代码中定义常量值时,我通常会将它们声明为"private static final",但最近我一直在维护代码,其中常量被定义为"private final".

我现在正在优化,并想知道是否要"静态化"这些.

例如

public class X {
    private final String SOME_CONST = "Whatever";
}
Run Code Online (Sandbox Code Playgroud)

以上代码是否与以下代码等效(在运行时),因此只保留了1个'SOME_CONST'副本?

public class X {
    private static final String SOME_CONST = "Whatever";
}
Run Code Online (Sandbox Code Playgroud)

我原本以为这是相当基本的,但我无法在任何地方找到答案.

[编辑]有些人回答了被实习的String实例.对不起,我应该选择一个更好的例子,在我看的情况下,它不仅仅是字符串,而是很多不同的类型(一些标准,一些用户定义).

我对'私人决赛'与'私人静态决赛'宣言的影响更感兴趣.

java optimization

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

有谁知道如何使用JNI-Registry(com.ice.jni.registry)为密钥设置默认注册表值?

我目前正在尝试通过Java应用程序查询和设置一些Windows注册表项.我们被授权使用JNI-Registry库(出于许可的原因).要设置的键和值不在我的控制之下(我正在修改由另一个,第三方,应用程序设置的值).

我可以获取并设置正常键和值的各种条目和值,我可以查询键的默认值OK.但是,我需要知道如何设置密钥的默认值.

//This works
final RegistryKey regKey = Registry.HKEY_LOCAL_MACHINE.openSubKey("SOFTWARE\\company\\app\\subkey", RegistryKey.ACCESS_ALL);
RegStringValue blah = (RegStringValue) regKey.getValue("blah");
if (blah == null) {
    blah = new RegStringValue(regKey, "blah");
}
blah.setData("Some data");
regKey.setValue(blah);

//Not sure about this...
final RegistryKey regKey = Registry.HKEY_LOCAL_MACHINE.openSubKey("SOFTWARE\\company\\app\\subkey", RegistryKey.ACCESS_ALL);
String defaultValue = regKey.getDefaultValue();    //Gets the default value OK
//How do I reset it, though???
//need something like:
//   regKey.setDefaultValue("Some new value");

//The following does not seem to work
RegDWordValue defVal = (RegDWordValue) regKey.getValue(""); //Also tried ...getValue("Default")
defVal.setData("Some new Value");
regKey.setValue(defVal); …
Run Code Online (Sandbox Code Playgroud)

java registry

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

Scala singleton工厂和类常量

好吧,在关于'类变量作为常量'的问题中,我得到的事实是,在"官方"构造函数运行之后(即直到你有一个实例),常量才可用.但是,如果我需要伴侣单身人士在课堂上进行调用怎么办:

object thing {
    val someConst = 42
    def apply(x: Int) = new thing(x)
}

class thing(x: Int) {
    import thing.someConst
    val field = x * someConst
    override def toString = "val: " + field
}
Run Code Online (Sandbox Code Playgroud)

如果我首先创建伴随对象,'new thing(x)'(在伴侣中)会导致错误.但是,如果我首先定义类,'x*someConst'(在类定义中)会导致错误.

我也尝试将类定义放在单例中.

object thing {
    var someConst = 42

    def apply(x: Int) = new thing(x)

    class thing(x: Int) {
        val field = x * someConst
        override def toString = "val: " + field
    }
}
Run Code Online (Sandbox Code Playgroud)

但是,这样做会给我一个'thing.thing'类型的对象

val t = thing(2)
Run Code Online (Sandbox Code Playgroud)

结果是 …

syntax scala scala-2.8

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