UML 至 Java - 版本注意事項


1.0 已知的問題
   1.1 轉換後可能遺失所產生之 Java 檔案的捷徑
   1.2 轉換可能不會更新 Java 元素
   1.3 轉換可能會將 Java 元素從程式碼中移除

1.0 已知的問題

1.1 轉換後可能遺失所產生之 Java 檔案的捷徑

當您在選取取代 UML 元素選項的情況下,將 UML 模型轉換成 Java 程式碼時, UML 模型中的物件會換成所產生之 Java 檔的相對捷徑。您可以使用還原按鈕來還原作業。不過, 如果您之後按一下重做按鈕, 模型會遺失先前產生之 Java 檔的所有捷徑。暫行解決辦法是不要使用重做按鈕。轉而重新執行「UML 至 Java」的轉換。

1.2 轉換可能不會更新 Java 元素

如果 Java 元素之前有兩項 Javadoc 備註, 「UML 至 Java」轉換可能不會更新 Java 元素。

舉例來說, 如果轉換產生一個 Java 元素, 而該元素的 Javadoc 中有一個 @generated 標示, 且 Java 元素之前有另一項 Javadoc 備註, 當重新套用轉換時,該元素(例如 transformGenerated())將不會更新。

    /**
* A commented user-created method
*/
// private void userCreated() {
// }

/**
* @generated "..."
*/
public void transformGenerated() {
}

暫行解決辦法是註銷整個 Java 元素(整個方法、欄位、類別或介面定義),然後將它們(包括其前面的任何備註) 移動到 Java 程式檔尾端的最後括弧之前。之後,原始範例將類似如下:

    /**
* @generated "..."
*/
public void transformGenerated() {
}

... end of source file, before final brace ...

/**
* A commented user-created method
*/
// private void userCreated() {
// }

1.3 轉換可能會將 Java 元素從程式碼中移除

如果 Java 元素已不再指定於來源模型中, 「UML 至 Java」轉換可能會將該 Java 元素從程式碼中移除。

舉例來說,當重新套用轉換時, 如果來源模型中沒有定義某方法(例如 importantUserCreated()), 該方法會連同被註銷的程式碼(內含 Javadoc)一起從程式碼中移除。

     /**
* @generated "..."
*/
// public void generatedMethodUserWantsToSave() {
// }

private void importantUserCreated() {
}

暫行解決辦法是註銷整個 Java 元素(整個方法、欄位、類別或介面定義),然後將它們(連同其前面的任何備註) 移動到 Java 程式檔尾端的最後括弧之前。之後,原始範例將類似如下:

     private void importantUserCreated() {
}

... end of source file, before final brace ...

/**
* @generated "..."
*/
// public void generatedMethodUserWantsToSave() {
// }

返回主 Readme 檔