小编Mne*_*nth的帖子

您是否针对特定问题或一般例外编写例外情况?

我有一些代码为用户提供用户ID,然后向该用户发送电子邮件.

emailUtil.sendEmail(userId, "foo");

public void sendEmail(String userId, String message) throws MailException {
    /* ... logic that could throw a MailException */
}
Run Code Online (Sandbox Code Playgroud)

MailException 可能会因为多种原因而抛出,电子邮件地址出现问题,邮件模板出现问题等.

我的问题是这样的:你是为这些异常中的每一个创建一个新的异常类型然后单独处理它们还是创建一个MailException然后将一些东西存储在允许的异常(计算机可读的东西,而不是描述文本)中我们根据实际发生的事情做不同的事情.

编辑:作为澄清,例外不是日志和什么不是,这与代码如何对它们做出反应有关.为了继续使用邮件示例,让我们说当我们发送邮件时,它可能会因为您没有电子邮件地址而失败,或者因为您没有有效的电子邮件地址,或者它可能会失败等等.

我的代码希望对每个问题做出不同的反应(主要是通过更改返回给客户端的消息,但也包括实际逻辑).

最好是针对这些问题中的每一个进行异常实现,或者是一个具有内部特征的一个伞状异常(一个枚举说),让代码区分它是什么类型的问题.

c# java exception

10
推荐指数
2
解决办法
1084
查看次数

如何修复Java-GUI程序(swing),它与awesome-wm一起工作?

Java程序的swing-UI与awesome-wm不能很好地协同工作.awesome是UNIX的窗口管理器,它自动调整程序窗口的大小,Swing-UI无法正确识别这些调整大小.我不在乎,如果真棒或Java是有罪的,我想知道如果我能以某种方式改变我的Java程序,他们将与真棒合作.这样我的程序用户即使在使用异国情调的窗口管理器时也能获得正确的体验.

java user-interface swing awesome-wm

10
推荐指数
2
解决办法
9402
查看次数

如何从SVN中删除已从FS中删除的文件?

在Windows上使用TortoiseSVN,如何从存储库中删除已在文件系统上删除的文件?我希望它们在我的下次提交中显示为"丢失"或"删除",但情况似乎并非如此.

在Linux/Mac上,我只运行此命令:

svn st | grep ^! | cut -b7- | xargs svn delete
Run Code Online (Sandbox Code Playgroud)

-克里斯

svn tortoisesvn

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

如何在LaTeX中划分部分标题?

编辑:正如我在第一个答案中所看到的,下划线是错误的.我想要在标题下面有一行,将标题与以下文本分开.

我想用水平线从下面的文本中分隔章节标题.目前我使用以下内容:

\newcommand{\tmpsection}[1]{}
\let\tmpsection=\section
\renewcommand{\section}[1]{\tmpsection{#1}\hrule\nobreak}
Run Code Online (Sandbox Code Playgroud)

但是这会产生一条直线,它离剖面标题太远,接近下面的文字.谁有更好的主意?

formatting latex tex heading

10
推荐指数
4
解决办法
4万
查看次数

哪个java-library计算累积标准正态分布函数?

对于一个项目,我有一个公式的规范,我必须实现.在这些公式中,存在累积标准正态分布函数,其采用浮点并输出概率.该功能由Φ表示.存在一个Java库,它可以计算这个函数吗?

java statistics probability computation

9
推荐指数
3
解决办法
2万
查看次数

如何说服其他开发者不要忽视异常?

最近我在另一个开发人员接管的应用程序中遇到了一个错误.我调试了原因,一个多小时后我意识到,问题不是产生异常的代码,而是在返回错误数据之前执行的一些代码.如果我潜入这里,我遇到了以下情况:

try {
  ...
} catch (XYException e){}
Run Code Online (Sandbox Code Playgroud)

如果Exception会被传播(我做了一个更改),我会在几分钟内找到错误的原因,因为stacktrace已经指出了问题所在.那么如何说服其他开发人员永远不会以这种方式捕获和忽略异常呢?

java exception try-catch

9
推荐指数
2
解决办法
485
查看次数

我怎样才能找到包含一些给定点的最小圆?

我已经给出了一些点(2D坐标),并希望找到包含所有这些点的最小圆.算法不一定非常有效(虽然它自然会很好).

algorithm 2d

9
推荐指数
1
解决办法
3721
查看次数

如何用Java编写GEOTIFF?

我想编写一个GEOTIFF,其中包含Java中的所有地理元数据.哪个库等最适合此目的?

java gis tiff geospatial geotiff

9
推荐指数
1
解决办法
5660
查看次数

如何为checkstyle定义抑制定义,它们同时适用于ant和eclipse

我在项目checkstyle中使用,我在checkstyle-configuration中定义了一个SuppressionFilter.我使用Apache ant通过持续集成进行自动构建.

我的问题来自以下情况:我不想将大量文件填充到基于项目的文件中,因此checkstyle.xml和suppressions.xml都位于名为conf的子目录中(用于构建的配置).现在Ant和Eclipse在查找suppressions.xml方面的工作方式不同.

在我声明了一个ant-task来查找checkstyle的基本配置的checkstyle.xml之后,Ant使用基于项目的basedir作为basedir来查找suppressions.xml.此checkstyle.xml现在包含以下内容:

<module name="SuppressionFilter">
    <property name="file" value="conf/suppressions.xml"/>
</module>
Run Code Online (Sandbox Code Playgroud)

这样ant-build就会找到suppressions.xml,因为构建的basedir是项目目录.

现在使用Eclipse 的checkstyle-plugin带来了一个问题.它从checkstyle.xml具有的路径(conf)开始查找suppressions.xml.对于Eclipse,声明必须看起来像这样,工作:

<module name="SuppressionFilter">
    <property name="file" value="suppressions.xml"/>
</module>
Run Code Online (Sandbox Code Playgroud)

编辑:即使这不起作用,Eclipse似乎总是需要一个绝对的路径.

我想知道一种方法,Eclipse和Ant都可以使用相同的checkstyle配置.有人知道这个问题的解决方案吗?绝对路径不是解决方案,因为每个开发人员和CI服务器都有不同的项目目录路径.

ant continuous-integration build-process eclipse-plugin checkstyle

8
推荐指数
2
解决办法
9433
查看次数

哪个Javascript测试框架支持在没有浏览器的情况下进行测试?

对于Javascript,存在一些测试框架,如JSUnit或js-test-driver.它们很好,但是它们在浏览器中运行测试.这很好,特别是验证您的webapp在不同的浏览器中运行.但是在连续集成服务器上没有安装窗口系统(也没有浏览器).那么有没有一种方法可以在不使用浏览器的情况下运行测试?最好的方法是使用现有的一个框架,这样开发人员就可以在浏览器中本地运行测试,而持续集成系统则无需浏览器.

javascript testing continuous-integration unit-testing

8
推荐指数
1
解决办法
2291
查看次数