我正在尝试以ISO8601格式解析日期:
YYYY-MM-dd'T'HH:MM:ss.SSSZ
我是否正确无法使用java.time.format.DateTimeFormatter中定义的任何默认格式对其进行解析?
例如,ISO_OFFSET_DATE_TIME将仅解析:
YYYY-MM-dd'T'HH:MM:ss.SSSZZ
样品:
yyyy-MM-dd'T'HH:mm:ss.SSSZ
2015-04-29T10:15:00.500+0000
yyyy-MM-dd'T'HH:mm:ss.SSSZZ
2015-04-29T10:15:00.500+00:00
Run Code Online (Sandbox Code Playgroud)
顺便说一句:我知道我可以定义自己的格式化程序,而不是问题.只是想确保我不会失去了一些东西作为ISODateTimeFormat的乔达能够解析两种:
org.joda.time.format.DateTimeFormatter dateTimeFormatter = ISODateTimeFormat.dateTime();
DateTime dateTime = dateTimeFormatter.parseDateTime("2015-04-29T10:15:00.500+0000");
Run Code Online (Sandbox Code Playgroud) 我想打包两个或更多非常相似的发行版,唯一的区别是数据集的路径将在这些发行版中.
给出了路径的这个例子:$ {project.basedir}/src/config/dataset1
<?xml version="1.0" encoding="UTF-8"?>
<assembly xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.2"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.2 http://maven.apache.org/xsd/assembly-1.1.2.xsd">
<id>dataset1</id>
<formats>
<format>zip</format>
</formats>
<fileSets>
<fileSet>
<directory>${project.basedir}/src/config/dataset1/aaa</directory>
<outputDirectory>conf/aaa</outputDirectory>
</fileSet>
<fileSet>
<directory>${project.basedir}/src/config/dataset1/bbb</directory>
<outputDirectory>conf/bbb</outputDirectory>
</fileSet>
</fileSets>
<!-- MANY MORE FILESETS... -->
</assembly>
Run Code Online (Sandbox Code Playgroud)
现在我想要不同数据集的完全相同的汇编描述符,例如:$ {project.basedir}/src/config/dataset2
当然,我可以创建两个程序集描述符.但是,我必须记住在需要时更改多个位置,或者在添加另一个或两个数据集时更糟.
有没有办法解决这个问题,比如创建多个执行并将属性传递给它?还是更好的东西?
编辑: 这个愿望项目将解决所有问题:https: //jira.codehaus.org/browse/MASSEMBLY-445
我正在使用工作流插件(重命名为管道插件)创建相当复杂的工作流。为简单起见,让我们假设我需要构建一个工作,但这项工作非常昂贵,而且不需要每次都构建。仅当有一些 SCM 更改时。
所以让我们称这个工作为昂贵的工作,它是源代码管理,有SCMRepositoryA。
所以我基本上想说
build job: 'expensiveJob'
Run Code Online (Sandbox Code Playgroud)
我想轮询 SCM 更改并根据该信息构建作业。
有没有办法做到这一点?
我目前的解决方案是,我必须在管道脚本中签出SCMRepositoryA,然后检查currentBuild.rawBuild.changeSets在我看来像是很多不必要的工作,并且可能必须与我工作中的任何源代码管理更改保持一致。
我正在将maven build迁移到gradle,我正在努力在根项目中定义基本的插件配置.并在子模块中提供特定的配置属性.
这是一个例子:
root:build.gradle
configure(filterSubprojects(['component'])) {
apply plugin: "org.flywaydb.flyway"
flyway {
url = "jdbc:oracle:thin:@${db.host}:${db.port}:${db.name}"
user = db.owner.name
password = db.owner.password
}
}
Run Code Online (Sandbox Code Playgroud)
specific-subproject-component:build.gradle
ext {
db = [
host : <host>,
port : <port>,
name : <name>,
user : [name: <user-name>, password: <user-password>]
]
}
Run Code Online (Sandbox Code Playgroud)
我收到这个错误:
Cannot get property 'db' on extra properties extension as it does not exist
Run Code Online (Sandbox Code Playgroud)
可能是非常基本的问题,但我无法弄清楚如何做到这一点.