小编Jon*_*rne的帖子

使用适配器将类编组到具有 MOXy 或任何其他 JAXB 实现的根元素

我有一个从 Apache Commons Configuration 扩展 CompositeConfiguration 类的类。我正在尝试使用 MOXy 将其编组为 XML。我创建了一个 XML 适配器,可将配置转换为简单的名称/值对象列表。

我已经尝试对下面的内容使用多种变体,但仍然受阻。当我创建 JAXB 上下文时,我可以看到我的适配器类被加载和实例化,但是当我编组配置对象时它永远不会被调用。

查看 MOXy 源代码,我开始怀疑不可能为也是根元素的 Java 类指定 XML 适配器。我是否在正确的轨道上进行这项工作,还是有完全不同的方法来做到这一点?

XML 适配器:

public class JAXBConfigurationAdapter extends XmlAdapter<Object, BetterBaseConfiguration>
{

    @Override
    public Object marshal(final BetterBaseConfiguration javaObject) throws Exception
    {
        List<ConfigurationPropertyXmlType> jaxbConfiguration = new ArrayList<>();
        Iterator<String> keys = javaObject.getKeys();
        while (keys.hasNext())
        {
            String key = keys.next();
            ConfigurationPropertyXmlType property = new ConfigurationPropertyXmlType();
            property.setKey(key);
            property.setValue(javaObject.getString(key));
            jaxbConfiguration.add(property);
        }

        return jaxbConfiguration;
    }

    @Override
    public CompositeConfiguration unmarshal(final Object jaxbObject) throws Exception
    {
        BetterBaseConfiguration configuration = …
Run Code Online (Sandbox Code Playgroud)

jaxb2 moxy

5
推荐指数
1
解决办法
1141
查看次数

仅更改某些文件的 rollup-plugin-postcss 生成的 CSS 类名称

我需要配置 rollup-plugin-postcss 以仅修改某些文件的 CSS 类名称。我知道这对于 WebPack 是可能的,但我不知道如何使用 Rollup 来做到这一点。理想情况下,我想给出一个正则表达式来描述如何处理符合该条件的 CSS 文件。

这就是我的 rollup.config.js 的样子:

import commonjs from "@rollup/plugin-commonjs";
import resolve from "@rollup/plugin-node-resolve";
import external from "rollup-plugin-peer-deps-external";
import typescript from "rollup-plugin-typescript2";
import pkg from "./package.json";
import babel from "rollup-plugin-babel";
import sourcemaps from "rollup-plugin-sourcemaps";
import postcss from "rollup-plugin-postcss";
import static_files from "rollup-plugin-static-files";
import image from "@rollup/plugin-image";

export default {
  input: "src/index.ts",
  output: [
    {
      file: pkg.main,
      format: "cjs",
      sourcemap: true,
    },
    {
      file: pkg.module,
      format: "es",
      sourcemap: true,
    },
  ],
  plugins: [ …
Run Code Online (Sandbox Code Playgroud)

rollup postcss rollup-plugin-postcss

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

标签 统计

jaxb2 ×1

moxy ×1

postcss ×1

rollup ×1

rollup-plugin-postcss ×1