我不熟悉,所以如果我说不清楚的地方,请向我提问,或者随意修改任何需要编辑的内容。
我已经使用Eclipse作为IDE,参与了一个GWT项目。我的任务是创建一个JavaScript / jQuery用户界面来替换GWT用户界面。此UI也将被其他项目使用。我已经很好地编写了UI,但它仍然会经历变化。与此同时,它被用于三个不同的项目,其中至少有一个是纯JS。
我们一直在复制我的所有文件(我有很多JS文件,模块化并使用require.js,以及CSS和图像文件)到每个项目中。对于GWT项目,我一直在将文件复制到war文件夹中,而JS项目只是将文件复制到其网页的根级别。这是一种非常糟糕的做事方式 - 我们没有UI文件的主要来源,每个项目都在进行单独的更改。我们通过将文件作为单独的项目检查到我们的存储库来解决这个问题。
问题是:现在怎么办?
我尝试利用Eclipse创建链接和虚拟文件夹的能力。它在Project Explorer中看起来很棒,但当然物理目录中没有实际文件。当我尝试作为Web应用程序运行时,找不到这些文件。
然后我尝试在Eclipse中创建一个指向这些文件的项目,并在我的require config的路径中引用它。但这高于应用程序的根目录,因此文件无法访问。
我可以让require.js一起构建我的所有js文件。通过足够的努力,我可以通过直接嵌入它们来使所有图像消失。我希望留下我所有的css文件 - 我们试图展示的一个功能是我们可以轻松地以这种方式更改UI的主题,所以我有很多默认的jqueryui主题。当然,它们不会像我的js代码那样频繁地改变,所以复制它们也许并不坏。
我不认为我在找一些不可能的东西。我知道这归结为知道如何正确设置Web项目。是不是有某些方法可以将这些文件仅保存在一个地方,但是它们可以被多个Web项目使用?
如果重要,我知道我们确实为这些项目构建了脚本,但我还没有遇到它们。
感谢您提供任何建议。
答案 0 :(得分:0)
嗯,我并不是真的希望有风滚草徽章(猜我输的太多了),但现在我明白了,我会给出我找到的答案:
答案很简单:一个符号链接,并更改代码以查找新链接的目录。在* nix-land中,这很简单:ln -s
。我必须查看Windows,但它基本上归结为mklink /D
。只需创建此链接然后刷新Eclipse即可使文件显示在工作区中。编辑它会在其原始位置进行更改。唯一的问题是在检入代码时记住更新该位置以及消耗该位置。
在我向同事发出解决方案后,有人建议我们通过源控制系统来实现。由于我们目前正在使用Visual SourceSafe,我可以使用Share
命令。 (我记得以前的项目中有一种方法可以在SVN中执行此操作)。我没有使用SourceSafe解决方案,只是因为我在某处读到了共享不会更新新文件或已删除的文件。如果添加或删除任何内容,则必须删除共享并重新创建。我宁愿做一个符号链接。