小编lit*_*erg的帖子

是否可以检查哪些gradle依赖项包含给定的类?

最近,我们遇到了类的版本不匹配问题org.apache.commons.beanutils.PropertyUtilsBean。我们认为不匹配只是commons-beanutils引入1.8和1.9.3版本的某些依赖项之间的不匹配,但是在跟踪并排除每个传递性依赖项之后,我们仍然面临一个问题。

事实证明,PropertyUtilsBean也打包在commons-digester3-3.2-with-deps而不是声明为的依赖项内commons-beanutils

gradle是否可以在所有依赖项(包括可传递的依赖项)中搜索特定的完全限定的类名?这样,我们可以当场解决此类问题。

java dependencies dependency-management gradle

10
推荐指数
3
解决办法
607
查看次数

当类出现在堆栈跟踪中时在断点处停止

当堆栈跟踪中存在特定类时,Intellij 有没有办法创建条件断点?或者,当在此堆栈跟踪中传递特定断点时。

给出的示例:假设我们有一些实用方法Utils.doSomething(),并且我只想在从 执行该方法时停止SomeClass.doSomething()

我确实知道有“禁用直到命中断点”,但这使得代码执行在满足初始条件后只要命中就停止在那里。

例子:

class SomeClass {
    void doSomething() {
        int y = 1; // Breakpoint here
        Utils.doSomething();
        Utils.doSomething();
    }

    void doSomethingElse() {
        Utils.doSomething();
    }
}

static class Utils {
    static void doSomething() {
        int x = 1; // Breakpoint with condition here
    }
}

@Test
public void test() {
    SomeClass someInstance = new SomeClass();
    someInstance.doSomething();
    someInstance.doSomethingElse();
    someInstance.doSomething();
}
Run Code Online (Sandbox Code Playgroud)

断点打开int y = 1;

条件为 on 的断点int x = 1;

Utils.doSomething()它在第一次执行时停止,但在下一行再次执行SomeClass.doSomething() …

java debugging intellij-idea

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

带有时区的 Postgresql date_trunc 将区域移动 1 小时

我们使用的是 Postgresql 9.4,在使用 date_trunc 时我注意到一个奇怪的行为。结果中的时区移动了 1 小时:

select date_trunc('year','2016-08-05 04:01:58.372486-05'::timestamp with time zone);
       date_trunc
------------------------
2016-01-01 00:00:00-06
Run Code Online (Sandbox Code Playgroud)

截断到例如天时没有这种行为:

select date_trunc('day','2016-08-05 04:01:58.372486-05'::timestamp with time zone);
       date_trunc
------------------------
2016-08-05 00:00:00-05
Run Code Online (Sandbox Code Playgroud)

这是预期的行为吗?如果是这样,这背后的逻辑是什么?

postgresql timezone postgresql-9.4

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

为什么Oracle数据库在按间隔创建分区时需要至少提供单个分区

我想知道为什么Oracle数据库要求在创建时至少定义了单个分区 PARTITION BY RANGE INTERVAL

这是对的:

CREATE TABLE FOO ( bar VARCHAR2(10), creation_date timestamp(6) not null ) PARTITION BY RANGE (creation_date) INTERVAL (NUMTODSINTERVAL(1,'DAY')) ( PARTITION part_01 values LESS THAN (TO_DATE('01-03-2018','DD-MM-YYYY')) )

然而,这不是:

CREATE TABLE FOO ( bar VARCHAR2(10), creation_date timestamp(6) not null ) PARTITION BY RANGE (creation_date) INTERVAL (NUMTODSINTERVAL(1,'DAY'))

我希望在某些迁移情况下需要第一个分区,但在创建新表时则不需要.

有关该文档的Oracle文档:

CREATE TABLE语句的INTERVAL子句为表建立间隔分区.您必须使用PARTITION子句指定至少一个范围分区. https://docs.oracle.com/cd/E11882_01/server.112/e25523/part_admin001.htm#BAJHFFBE

database oracle partitioning database-partitioning

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