V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
yoyos
V2EX  ›  Java

多个 Java 后台项目的 UI 部分如何公用同一套 js / css 代码

  •  1
     
  •   yoyos · 2018-11-20 17:53:24 +08:00 · 2572 次点击
    这是一个创建于 2198 天前的主题,其中的信息可能已经有所发展或是发生改变。
    萌新真心求教 > <

    具体的问题就是现在有好几个业务后台都是用同一套代码框架实现的,后端是 SSM 框架实现,前端网页 UI 是用 JQuery 和 vue.js 实现的。
    每个业务后台都是独立的 project。

    现在的问题就是 js 和 css 代码是每个后台 project 的 webapp 目录下都有独立的一份,这样就导致了如果在一个项目里给网页 UI 部分开发了新的功能,就要手动复制 js / css 文件到每个后台 project 来更新代码。

    这样实在太蠢了。。。然而公司为了节约成本并没有请专门的前端工程师,所以身边没有可以请教的。。。
    就是我设想把 IU 部分的 js / css 代码独立成一个 project,然后让所有的后台项目都引用这个 project,具体要怎么操作比较好?
    一个 Java 项目有办法依赖一个 js 项目吗,现在组里 IDEA 和 Eclipse 混用,是不是有 IDE 插件什么的?
    或者已有的成熟解决方案?
    第 1 条附言  ·  2018-11-22 17:13:52 +08:00
    目前用 webjars 的思路实现了,用起来还不错,谢谢大家
    9 条回复    2018-11-22 10:24:40 +08:00
    whypool
        1
    whypool  
       2018-11-20 17:54:46 +08:00
    前后端分离
    yoyos
        2
    yoyos  
    OP
       2018-11-20 18:06:01 +08:00
    @whypool emmm 现在网页框架是 freemarker 模版引擎渲染出来的,具体的数据展示、操作才用的 vue,只能说耦合的很紧而且重构成本很高。其实就是只是想各个项目用同一套 js /css
    xiejc
        3
    xiejc  
       2018-11-20 18:09:38 +08:00 via iPhone   ❤️ 1
    Webjar 可以吧
    yoyos
        4
    yoyos  
    OP
       2018-11-20 18:44:16 +08:00
    @xiejc 这个应该可行,我试试
    maplerecall
        5
    maplerecall  
       2018-11-20 20:00:22 +08:00
    把公用的 CSS、Js 放到一个 Git Submodule 应该可以达到这种需求,多个项目可以复用,更新一处其它地方也可以一起更新
    MoHen9
        6
    MoHen9  
       2018-11-20 20:36:44 +08:00 via Android
    单独维护一个静态资源服务,每次小更新打个小版本,大更新打个大版本。
    1010543618
        7
    1010543618  
       2018-11-20 21:15:34 +08:00
    放到 npm 上挺好
    tsui
        8
    tsui  
       2018-11-21 03:43:22 +08:00
    Apache Ant: copy task
    Maven: copy artifacts

    楼上说 npm 的是认真的么,自己的业务逻辑 publish npm ???
    yuutan
        9
    yuutan  
       2018-11-22 10:24:40 +08:00
    lz 说的是 ui 分离吧,用 npm 也是可以的,配 npmrc 走权限内网这样
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   3069 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 25ms · UTC 14:30 · PVG 22:30 · LAX 06:30 · JFK 09:30
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.