我不是那么有经验,但我在一些大型Java EE项目(使用maven2)上工作,使用非常独特的方式来处理不同平台上的安装/交付.
1)其中之一是使用快照进行开发,然后发布组件和主要Web应用程序的maven版本.因此交付是:
团队将使用该文件将新的应用程序版本放在不同的平台上.我认为这个过程是严格的,并且允许你总是容易地保持生产中传递的不同配置,但它不是很灵活,过程有点沉重,它让我们有时做一些肮脏的事情,比如重写一类战争补丁回归......这是一个电子商务网站,每月有1000万独立访客,可用率为99.89%.
2)我看到的另一个是检查每个平台上的源,然后将快照工件安装在本地存储库中.然后,应用程序服务器将使用.m2文件夹的这些快照.没有真正的交付流程,因为要将新版本投入生产,我们只需要更新组件/ webapps的来源,做一些maven clean install并重新启动应用程序服务器.我认为它更灵活,但我看到一些缺点,这种方法对我来说似乎很危险.这个网站有一个前台,我不知道数字,但它远远少于第一个.它还为13万人公司的大多数员工提供了一个很大的后台.
我想根据网站,公众展示和所需的可用性,我们必须根据需要调整交付策略.
我不是在问这个解决方案是最好的,但想知道你是否看到了不同的东西,以及你会在哪种情况下使用哪种策略?
public void foo() {
begin();
try {
...
commit();
} catch (Exception e) {
rollback();
throw e;
}
}
Run Code Online (Sandbox Code Playgroud)
在上面的示例中,有一个错误,因为foo没有throws Exception.添加它不会使方法的可用性也很好.
最好的方法是什么?如果在没有真正"处理"错误的情况下发生错误,您如何做某事?
java error-handling transactions exception-handling exception
我试图使用此simplexml_load_string()Docs函数检查字符串的有效性为xml, 但它显示了很多警告消息.
如何检查字符串是否是有效的XML而不抑制(@在开头)错误并显示expec的警告函数
我对Javascript Typed Arrays有点困惑.
我有几个Float32Array,没有concat方法.我不知道提前有多少人,顺便说一下.我想将它们连接到另一个Float32Array中,但是:
var length_now = buffer.length;
for (var i = 0; i < event.frameBuffer.length; i += 1) {
buffer [length_now + i] = event.frameBuffer[i];
}
Run Code Online (Sandbox Code Playgroud)
我找到的唯一解决方案是将Float32Array复制到一个常规数组中,这绝对不是我想要的.你会怎么做,stackoverflowers?
我离开了我的一个记录处理程序,在strace下运行了几分钟.
这表明在那几分钟内超过2亿次呼叫stat("/etc/localtime",..)听起来有点过分且不需要.
strace输出如下所示:
write(1, "C137015 393393093052629137110 47"..., 16384) = 16384
stat("/etc/localtime", {st_mode=S_IFREG|0644, st_size=2225, ...}) = 0
stat("/etc/localtime", {st_mode=S_IFREG|0644, st_size=2225, ...}) = 0
stat("/etc/localtime", {st_mode=S_IFREG|0644, st_size=2225, ...}) = 0
stat("/etc/localtime", {st_mode=S_IFREG|0644, st_size=2225, ...}) = 0
stat("/etc/localtime", {st_mode=S_IFREG|0644, st_size=2225, ...}) = 0
stat("/etc/localtime", {st_mode=S_IFREG|0644, st_size=2225, ...}) = 0
stat("/etc/localtime", {st_mode=S_IFREG|0644, st_size=2225, ...}) = 0
stat("/etc/localtime", {st_mode=S_IFREG|0644, st_size=2225, ...}) = 0
stat("/etc/localtime", {st_mode=S_IFREG|0644, st_size=2225, ...}) = 0
stat("/etc/localtime", {st_mode=S_IFREG|0644, st_size=2225, ...}) = 0
stat("/etc/localtime", {st_mode=S_IFREG|0644, st_size=2225, ...}) = 0
stat("/etc/localtime", {st_mode=S_IFREG|0644, …Run Code Online (Sandbox Code Playgroud) 有没有办法我们可以立即从应用程序安装或通过显示按钮(例如: - '添加小工具')在应用程序中启动Android小部件.所以它就像使用代码自动将小部件添加到我们的主屏幕.
谢谢Prakhs
我找不到NumPy for Windows python 2.7虽然我找到了它的OS X版本.
File "/usr/lib/python3.1/codecs.py", line 300, in decode
(result, consumed) = self._buffer_decode(data, self.errors, final)
UnicodeDecodeError: 'utf8' codec can't decode byte 0x92 in position 805: invalid start byte
Run Code Online (Sandbox Code Playgroud)
嗨,我得到了这个例外.如何捕获它,并在我收到此异常时继续读取我的文件.
我的程序有一个循环,逐行读取文本文件并尝试进行一些处理.但是,我遇到的某些文件可能不是文本文件,或者行格式不正确(外语等).我想忽略这些界限.
以下不起作用
for line in sys.stdin:
if line != "":
try:
matched = re.match(searchstuff, line, re.IGNORECASE)
print (matched)
except UnicodeDecodeError, UnicodeEncodeError:
continue
Run Code Online (Sandbox Code Playgroud) 是否有一个很好的方法(除了重新整理TreeViewItem.Template)以禁用选择TreeView?
我基本上寻找的ItemsControl风格TreeView(An ItemsControl是最好用'禁用'选择ListBox,阅读这篇文章)
我在Microsoft Surface应用程序中以波形格式捕获音频文件.现在出于文件大小的原因,我想将wave文件转换为mp3文件.我在互联网上读到这样做的好处是使用跛脚.
但是如何从我的应用程序中调用此exe文件?以及如何将其包含在我的应用程序中?
java ×2
python ×2
.net ×1
android ×1
arrays ×1
c ×1
c# ×1
decode ×1
encode ×1
exception ×1
gecko ×1
git ×1
itemscontrol ×1
java-ee ×1
javascript ×1
lame ×1
libxml2 ×1
linux ×1
maven-2 ×1
mp3 ×1
numpy ×1
php ×1
pixelsense ×1
selection ×1
simplexml ×1
svn ×1
transactions ×1
treeview ×1
typed-arrays ×1
wpf ×1
xaml ×1
xml ×1