设为首页收藏本站

最大的系统仿真与系统优化公益交流社区

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 5137|回复: 1

[求助] 总是出现swarm.SignatureNotFoundException错误

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
$ A# P: V5 @/ S$ t, l9 X  s, [
& F" n' T; C, a% L8 `! q" _本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21* @( R  e) x/ p; b$ d3 ~
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.$ A0 _6 x0 a9 D4 l5 R, k1 }
swarm.SignatureNotFoundException/ i1 }$ J) t7 G1 l+ s% {
        at swarm.Selector.<init>(Selector.java:76)+ Q- B9 d8 E& I" W2 E  Q
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
% H+ i7 t# ]) U8 a        at ActionGroupDemo.main(ActionGroupDemo.java:67)7 x+ Y, A  E1 q' N$ i- Y( a
& I0 n, N# b$ U/ {

8 n9 ?( q7 A% w% Iimport swarm.objectbase.SwarmImpl;0 X/ k3 P( b# a0 @5 e
import swarm.objectbase.Swarm;% B3 M# ?7 @" R- P
import swarm.activity.ScheduleImpl;
. X! Y) q1 N- }: M0 c3 zimport swarm.activity.Activity;- Z9 V$ m2 e) `. l
import swarm.activity.ActionGroupImpl;- a/ G7 K& s; t; E5 W* D  q  z
import swarm.collections.ListImpl;
3 Y) H9 J9 E1 @* ]/ L. \- Qimport swarm.defobj.Zone;
6 s1 m6 [: i6 M" _5 J4 Z2 vimport swarm.Globals;
* j% C7 j  `3 [7 X. }import swarm.Selector;" g) Q  ^6 k& l: m4 D( b% p1 t
import swarm.activity.ActionGroup;
7 m+ E# M! R3 H7 iclass Agent {
+ v  L7 O6 D" v        char id;8 A: S" q& Z. ^- g* }- r, Y4 @* ~
9 n9 B% P1 J- o2 v1 k
        Agent(char id) {
' k6 x. {( k3 c/ o4 u                this.id = id;1 k: r) S, _/ Z, a
        }
* Y9 |  n7 ?; C9 z3 `6 ^
& K: j4 Z: z4 `; q- G        public void agentStep() {
: h$ H) J9 Q+ x/ H; K                System.out.println(id + ":" + Globals.env.getCurrentTime());
  N# |3 j. B6 Z8 S4 m1 L        }
+ v  ?4 d( d, X+ u}& N% B# W; W& M) c/ y: V

% j6 u& E( i/ qpublic class ActionGroupDemo extends SwarmImpl {
1 L- `8 J3 q  S( I        ScheduleImpl schedule;% M. [+ D( H" M+ k$ h; D
        ActionGroupImpl actionGroup;$ i4 i# w5 j# c0 a( `, {/ e
        ListImpl list;; {& W. _7 y) }. g1 I& y4 q
        char Id = 'a';
4 V+ U% e) Y' e) K  y' X; L3 T' s; ^' X0 {+ p' L
        ActionGroupDemo(Zone aZone) {6 E4 a2 e, U' ^, i2 _! L" Z- X
                super(aZone);
6 o- f0 T7 w: q9 ^) L                list = new ListImpl(aZone);
9 [5 c% o% j) J1 D7 ]* b                swarmSetp();/ z3 B) N+ y- e/ a, k! ]+ V
                actionGroup = new ActionGroupImpl(aZone);9 f  _9 U6 g) k9 h- {
                schedule = new ScheduleImpl(aZone);* C4 @* a, @5 D
                try {
, v0 r* b  u, M: Y2 z9 A9 i8 l( c                        Selector agentSel = new Selector(Agent.class, "agentStep", false);  X* d8 n) ]# s; `/ [0 ^5 m
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行+ x; @# }7 G3 s. f: ?
                        
, ^- w$ j+ t3 w                        actionGroup.createActionForEach$message(list, agentSel);+ R0 \9 V; q. a
                        actionGroup.createActionTo$message(this, swarmSel);, {" M! a  v- O6 Y
                        schedule.at$createAction(0, actionGroup);
/ l+ R, E, }' _! {' Q0 W                        schedule.at$createAction(1, actionGroup);
& U- L4 ~  @# Q$ ?0 T' U                        schedule.at$createAction(2, actionGroup);
6 O- E5 Q) A; u2 P; q+ H
* N; _; V- T! u/ x                } catch (Exception e) {
& U/ H( e8 {# Q6 j; Q) ^# q6 B' E' E                        e.printStackTrace(System.err);
" j, [) G! U$ ^# B! {* E3 _                        //System.out.println(e);( A5 [; F6 u+ v+ v0 X0 Q8 w
                        System.exit(1);7 {: m* B$ o, H, W
                }
) z9 y5 U% j% e! h6 M" T$ U/ W" C" C, ?' {, N3 K' C
1 n$ k7 S6 B0 _0 ^
        }
; b3 x% ~% d, C, ]' X% X! k. `/ [8 n4 I( L/ h5 i
        private void swarmSetp() {: `) M% O% b; D: O, S
                list.addLast(new Agent(Id));
$ s" V9 M- u+ i2 h2 l; y                Id++;
7 P; [) i8 B5 |        }
# \' ]6 o( ~7 z4 t. V: G9 G4 Y
2 D  e6 {1 ?4 y3 D& ?+ \        public Activity activateIn(Swarm context) {
9 ^  `$ P$ U+ e. I: Q                super.activateIn(context);
) d" h% }3 I: _- X8 [9 r                schedule.activateIn(this);
1 g8 k0 p0 y! M3 v* ~* ~                return getActivity();
# ]% ^& {. i" f1 D. F. F6 E2 [        }
' O$ @0 c& ]: c" i1 m* n/ D8 y( H8 P- \% g# P
        public static void main(String[] args) {
- U" H  g' s) Q9 `' g, T                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);, E  ^& _; @% u- K; K& P
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);- E2 V& E# ?* T
                swarms.buildObjects();" @. h  g2 s) j3 A: W4 r$ j
                swarms.buildActions();
- ^6 S3 T# C! c7 t+ @* L                swarms.activateIn(null).run();, ?9 R- h4 D  ~" N: y
        }
: s5 @& ]' q/ y" h  E0 t/ Q# x* E; R
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|Archiver|手机版|SimulWay 道于仿真   

GMT+8, 2025-11-26 04:56 , Processed in 0.014224 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表