小编Dav*_*nts的帖子

git-subtree拉动并发症

我们一直试图让git-subtree处理一个项目(使用git版本1.7.9.4)并且遇到了一些复杂问题.几个月前,其他人之前使用此命令添加了子树:

git subtree add --prefix=foo git@example.com:foo.git master
Run Code Online (Sandbox Code Playgroud)

现在已经有了实质性的变化foo,我们想要合并这些变化,最好将它们压缩.自导入文件以来,没有任何文件被修改过.

我已经尝试了三件事来尝试合并更改.

第一:

git subtree pull --squash -P foo git@example.com:foo.git master
Run Code Online (Sandbox Code Playgroud)

抛出异常: Can't squash-merge: 'foo' was never added.

第二:

git subtree pull -P foo git@example.com:foo.git master
Run Code Online (Sandbox Code Playgroud)

这有点工作(但有一些问题,但是存在拉入所有提交的问题,并且与已修改的文件有冲突.

最后,我尝试了这个:

git pull --squash -s subtree git@example.com:foo.git  master
Run Code Online (Sandbox Code Playgroud)

这给了我想要的结果,输出Automatic merge went well; stopped before committing as requested和所有文件显示为已修改(具有正确的内容).

理想情况下,我想继续使用第一个git-subtree版本并获得接近上一版本的输出.如果我们必须始终使用最后一个版本,我们会,但我有点困惑为什么最后一个不产生合并冲突,而中间版本.

任何帮助表示赞赏.

git merge git-subtree

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

在tomcat中自定义java.util.logging处理程序

我们在给定系统上的所有Web应用程序之间有一些常见的日志记录配置,我们试图将其外部化到tomcat级别,而不是尝试在单个webapp级别进行处理.正在使用的webapps java.util.logging有点挑战,因为我们有一个自定义处理程序,并且似乎没有一种明显的方法可以让自定义处理程序与tomcat的类加载器很好地协同工作.这一切都处于原型阶段.

初步:Tomcat 7.0.32,Java 6.默认的tomcat 7安装,部署了一个REST服务,配置中没什么好笑的.

首先,大致遵循这个答案中的建议,我创建了自定义处理程序并将jar放入$CATALINA_HOME/lib并确认所述目录位于正确的目录中并且common.loader包含此目录:

common.loader=${catalina.base}/lib,${catalina.base}/lib/*.jar,${catalina.home}/lib,${catalina.home}/lib/*.jar

然后我修改了logging.properties文件并添加了处理程序:

handlers = 1catalina.org.apache.juli.FileHandler, 2localhost.org.apache.juli.FileHandler, 3manager.org.apache.juli.FileHandler, 4host-manager.org.apache.juli.FileHandler, java.util.logging.ConsoleHandler, my.custom.Handler

./startup.sh然而,当我跑步时,我得到以下内容:

[Loaded java.io.PrintWriter from /System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Classes/classes.jar]
[Loaded java.util.logging.StreamHandler from /System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Classes/classes.jar]
[Loaded java.util.logging.ConsoleHandler from /System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Classes/classes.jar]
Handler error
java.lang.ClassNotFoundException: my.custom.Handler
    at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
    at org.apache.juli.ClassLoaderLogManager.readConfiguration(ClassLoaderLogManager.java:521)
    at org.apache.juli.ClassLoaderLogManager.readConfiguration(ClassLoaderLogManager.java:464)
    at org.apache.juli.ClassLoaderLogManager.readConfiguration(ClassLoaderLogManager.java:288)
    at java.util.logging.LogManager$2.run(LogManager.java:267) [...]
Run Code Online (Sandbox Code Playgroud)

(这是JAVA_OPTS=-verbose:class).

我已经看到了稍后加载的相关类,但这看起来并不一致,可能是上述REST服务(直接使用它)的工件.

如果我CLASSPATH直接添加jar,我可以让一切正常工作,但这似乎通常不鼓励而不是修改加载器.

java.util.logging.Handlerlogging.properties读取之前如何在类加载器中干净地添加自定义(以及稍后的格式化程序)时,我是否缺少一些特别的东西?

或者,如果我在错误的树上咆哮,我会更好地解决多个webapps之间共享日志记录配置的问题java.util.logging.

logging tomcat java.util.logging

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

如何在特定时间每天解雇akka调度程序?

我创建了一个Akka的调度程序,每天发送邮件一段固定的时间(例如每天早上6点).那么如何调用演员呢?我的意思是我应该使用什么逻辑?谢谢.

scheduling scheduler quartz-scheduler job-scheduling akka

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