小编moo*_*are的帖子

Ant:从合并的jar文件中排除文件

对于一个java项目,我想将它依赖的所有第三方jar合并到Apache Ant创建的主jar中,我已经设法做了.

问题是这些jar文件中的一些在他们的META-INF-directories中有签名文件,所以当我尝试运行我的jar文件时,我收到错误消息"Invalid signature file digest for Manifest main attributes".手动删除签名文件后,错误消失了.

我尝试使用excludes-attribute或exclude-tag 过滤我的ant文件中的签名文件,但似乎没有任何效果.

这是蚂蚁任务:

<target name="jar" description="Creates the jar file">
  <mkdir dir="${jar}"/>
  <jar destfile="${jar}/${ant.project.name}.jar" level="9" filesetmanifest="mergewithoutmain">
    <zipgroupfileset dir="${lib}" includes="*.jar"/>
    <zipfileset dir="${class}"/>
    <manifest>
      <attribute name="Main-Class" value="${mainclass}"/>
    </manifest>
  </jar>
</target>
Run Code Online (Sandbox Code Playgroud)

如何在此ant任务中过滤生成的jar中的文件?谢谢你的帮助!

ant jar

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

如何保持网站与url路由目录的独立性

我正在开发一个使用url路由的PHP网站.我希望该网站与目录无关,因此可以将其从http://site.example.com/移至http://example.com/site/,而无需更改HTML中的每个路径.当我链接到不受路由影响的文件(例如css文件,图像等)时,问题就出现了.

例如,假设index控制器动作的视图welcome包含图像img/banner.jpg.如果使用网址http://site.example.com/welcome请求页面,则浏览器会将图像请求为http://site.example.com/img/banner.jpg,这非常好.但是如果使用网址http://site.example.com/welcome/index请求页面,浏览器会认为这welcome是一个目录,并会尝试将图像提取为http://site.example.com/welcome /img/banner.jpg,这显然是错误的.

我已经考虑了一些选择,但它们对我来说似乎都不完美:

  • 使用url重写将请求从(*.css | *.js | ...)或(css/* | js/* | ...)重定向到正确的路径.

    问题:每个扩展都必须在重写规则中命名.如果有人要添加新的文件类型(例如mp3文件),则不会重写.

  • 使用php函数在每个相对路径前面添加基本路径.例如:
    <img src="<?php echo url::base(); ?>img/banner.jpg" />

    问题:看起来凌乱; 包含路径的cssjs -files必须由PHP处理.

那么,如何保持网站目录独立?有没有比我提出的更好/更清洁的方式?

php url-routing

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

Windows:调整共享内存大小

当我在Windows上创建共享内存段(如CreateFileMapping(INVALID_HANDLE_VALUE, ...))时,除了创建更大的段并复制数据之外,还有什么方法可以调整它的大小吗?

我在MSDN中读过文件映射有一个固定的大小,但是有可能通过某种方式在同一个内存上进行新的映射吗?就像在Linux中,您可以使用shm_open(),然后ftruncate()mmap()它再次.

windows shared-memory

7
推荐指数
1
解决办法
2614
查看次数

Java:Linux上的字体看起来很乱,但在Windows上很好

我正在编写一个将PDF文档呈现给图像的java应用程序,当我在Windows上运行它时,它运行正常.但是当我在Linux上渲染PDF时,标准字体看起来有点乱,就像在某些字符的右侧会丢失一些像素.

我只是在安装了OpenJDK 6的Ubuntu 9.04上进行了测试,但我很确定我之前在Linux上遇到过类似的问题.我还试图用其他Java PDF应用程序打开PDF,比如SwingLabs PDFRenderer和IcePDF Demo Applet,他们遇到了同样的问题.在Windows上,它们都可以很好地渲染文档.我还使用默认的PDF查看器evince在同一台Ubuntu机器上打开文档.Evince渲染文档没有字体问题,所以我很确定这是一个普遍的Java + Linux问题.

用于比较:
此图像在Windows上呈现.
此图像在Linux上呈现.我用红色圆环标记了一些乱码.
这个也在Linux上呈现.看起来只有标准字体会受到影响.

任何帮助表示赞赏.

java linux pdf openjdk

4
推荐指数
1
解决办法
9730
查看次数

常量表达式中的条件运算符

我尝试使用MSVC 10的以下代码片段,它可以正常工作.

enum
{
  FOO = (sizeof(void*) == 8 ? 10 : 20)
};

int main()
{
  return FOO;
}
Run Code Online (Sandbox Code Playgroud)

我想知道的是:当所有操作数都是常量表达式时,C++标准(最好是C++ 98)是否允许我在常量表达式中使用条件运算符,或者这是Microsoft的怪癖/扩展?

c c++ conditional-operator constant-expression

3
推荐指数
1
解决办法
488
查看次数