我认为创建实例的常用习惯java.util.logging.Logger是:
public class SomeClassName {
private static final Logger LOG = Logger.getLogger(SomeClassName.class.getName());
}
Run Code Online (Sandbox Code Playgroud)
当我重构代码时,我的IDE将管理适当的更改行(例如,更改类的名称).不过,我仍然不得不重复我的课程名称.我真正喜欢做的事情是Logger.getLogger(getName())或者Logger.getLogger(class.getName()),但这不是合法的Java静态启动.
是否有更好的方法来获取不涉及重复自己的记录器?
相关问题如何存储未跟踪的文件?回答"跟踪文件".但是,这不适合我的特殊需求.
我正在尝试存储不在索引中的所有内容,git stash save --keep-index以便我可以在预提交钩子中验证索引.这个想法来自git-stash手册页的"测试部分提交"示例.我想确保我实际提交的内容通过了测试,而不仅仅是工作目录中的内容.这是我到目前为止所拥有的:
echo "Running tests on the staging area."
git stash save --keep-index
# configure, build, run tests, clean
git stash pop; true
Run Code Online (Sandbox Code Playgroud)
这似乎工作,直到我在我的工作目录中有未跟踪的文件,这些文件没有被隐藏.一些搜索导致了两年前的功能请求:选择在存储中保存未跟踪和/或忽略的文件,但没有别的.
我应该使用藏匿处吗?也许这是一个更好的方式涉及临时分支或东西.
我有一个Jenkins管道工作,对于部分构建,它使用一个具有大量停机时间的节点.如果节点处于联机状态并且在节点脱机时跳过而没有使构建失败,我希望执行此步骤.
这是相关的,但不同于跳过Matrix项目的部分问题.
我尝试以编程方式检查节点是否在线状态.
jenkins.model.Nodes.getNode('my-node').toComputer().isOnline()
Run Code Online (Sandbox Code Playgroud)
这与Jenkins安全沙箱相对应:
org.jenkinsci.plugins.scriptsecurity.sandbox.RejectedAccessException: unclassified method java.lang.Class getNode java.lang.String
Run Code Online (Sandbox Code Playgroud)
我尝试设置一个超时,如果节点离线,它将被触发.
try {
timeout(time: 10, unit: 'MINUTES') {
node('my-node') {
// Do optional step
}
}
} catch (e) {
echo 'Time out on optional step. Node down?'
}
Run Code Online (Sandbox Code Playgroud)
这有一个重大缺点.我必须知道该步骤需要的最长时间,然后在节点关闭时等待更长时间.我尝试用"金丝雀"步骤解决这个问题:
try {
timeout(time: 1, unit: 'SECONDS') {
node('my-node') {
echo 'Node is up. Performing optional step.'
}
}
node('my-node') {
echo 'This is an optional step.'
}
} catch (e) {
echo 'Time out on optional step. …Run Code Online (Sandbox Code Playgroud) 我正在测试SubGit作为从SVN迁移到Git的一种方式.
我想要做的是能够在git存储库中创建远程分支,所有用户都可以使用它不会同步回SVN.
我只希望SubGit跟踪主分支并将其同步回SVN,以便我们可以自由使用和共享其他Git分支.
有一个简单的方法吗?
谢谢