设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 12890|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
; o: Q3 }9 }; n% f( ]# p2 f7 [! }7 B/ v$ L
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
- g2 i" M4 v( ]$ W& H以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.& W; D+ Q- E& T0 z" r
swarm.SignatureNotFoundException; t# |# Q. S* ~% D  N$ k& J
        at swarm.Selector.<init>(Selector.java:76)
3 g' x8 i+ _. @$ ~5 P' g7 Q0 b        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
, h3 R: x4 s; ^9 j0 A) N- ~, _. H        at ActionGroupDemo.main(ActionGroupDemo.java:67)7 e, l1 `! ?$ [2 v

" k0 }8 A# E4 G9 @1 M& D. C+ ?/ e$ X5 i1 o
import swarm.objectbase.SwarmImpl;
/ n2 D2 L: J; Ximport swarm.objectbase.Swarm;
/ I: c( q2 x5 _) nimport swarm.activity.ScheduleImpl;- _. n3 H! F: X/ J& f9 h8 r( f- Y
import swarm.activity.Activity;  f6 G. K7 k2 e, ~7 l
import swarm.activity.ActionGroupImpl;
& b& Y8 E! e$ }+ Jimport swarm.collections.ListImpl;
- t  i/ A2 |) G/ Simport swarm.defobj.Zone;
9 j9 P" K+ B$ \/ E! i" Zimport swarm.Globals;/ J0 j0 s% |2 g+ ]" m: T
import swarm.Selector;
& A  f' {5 {( u) S/ p! ximport swarm.activity.ActionGroup;
; {) G& n; ]9 f2 ~& k( ]class Agent {
4 N% t: K) C; d3 B; v  V        char id;6 ]5 T. Y/ Q- V; Y5 K( Y

/ R# T: P' ~- S% B+ G0 }        Agent(char id) {$ u3 ~0 X/ U" \8 u. C
                this.id = id;+ I9 j! S9 R/ b0 _
        }
/ }5 u# k4 p4 o* U) E  |" h9 O7 _9 d) c  K0 N. D* |# l1 b
        public void agentStep() {
, B  r2 n+ R( s1 z$ i                System.out.println(id + ":" + Globals.env.getCurrentTime());) d5 f: H- V$ z& ^4 V; V9 t
        }8 h- K8 Y  _0 y! Z4 \
}9 I# w* e# I1 B5 Q7 V

$ D% o4 g: E) @1 n. N3 Qpublic class ActionGroupDemo extends SwarmImpl {+ _' d6 v  S% I, @+ h7 T
        ScheduleImpl schedule;
5 S1 l: p% c9 p5 ~# z% T        ActionGroupImpl actionGroup;
2 [( j+ ?/ _5 @        ListImpl list;3 ^% i; N6 E+ l) d; ^& Z' y( E( e
        char Id = 'a';5 ~& C' Q- \; [: J
# x- H. c" N# b+ I
        ActionGroupDemo(Zone aZone) {
6 G4 R) v2 B/ v* [                super(aZone);0 T, ^8 f; E3 z% @" j
                list = new ListImpl(aZone);, w3 b0 X; G* Y# T& f4 I3 p7 y
                swarmSetp();7 W. v, a5 e; w1 n& K- L7 D
                actionGroup = new ActionGroupImpl(aZone);  ^3 p8 l2 i% Q$ D! J( o
                schedule = new ScheduleImpl(aZone);) h4 u$ a2 {' [) @  _6 s3 f9 Z7 e
                try {
/ S8 F7 R" A1 E! U! m6 |# S                        Selector agentSel = new Selector(Agent.class, "agentStep", false);6 `4 O; P, ^5 v1 e
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行0 |) a4 u5 F: @2 A6 Z% [! ]
                        - b- a/ x% Y* m4 L3 E
                        actionGroup.createActionForEach$message(list, agentSel);
1 y9 S( h& j9 h2 k4 Y6 T                        actionGroup.createActionTo$message(this, swarmSel);
8 G- J( A0 {: j% b3 E; `                        schedule.at$createAction(0, actionGroup);" h( N3 j- t# C; n2 O
                        schedule.at$createAction(1, actionGroup);
$ j1 J- R- j: a0 _$ s: ]                        schedule.at$createAction(2, actionGroup);; F9 a8 M+ ^7 V) g, t# s4 ?

# ?, o8 L3 D/ d5 t  O                } catch (Exception e) {
. H  @; {/ O+ T                        e.printStackTrace(System.err);7 q" S. }2 J- \  ]" K4 k2 O
                        //System.out.println(e);
& w' e9 p  {% T                        System.exit(1);
3 o  E8 G- P, B$ t$ S6 `. a                }; J0 N8 k3 V$ I- {2 A5 M9 {( M

8 B# c- ~$ e3 k$ j4 K# h0 R2 t2 K% _; s3 s  N* z! q
        }
  o1 d6 |6 |2 O. v. x6 n# H3 C) C" x
        private void swarmSetp() {7 a* j4 V3 B' S! s; Y% x& ]$ W
                list.addLast(new Agent(Id));
- ]* `/ K$ N) ~                Id++;
7 [/ E6 o7 e# G7 r! ~        }  q9 L  q8 Y) I0 P. ]) l; `

; J7 m1 r7 v5 [- i5 Z. n+ h( ?        public Activity activateIn(Swarm context) {4 }5 Y, e/ X8 o) P- T) A0 T$ Y
                super.activateIn(context);
4 w( N5 r0 {8 E" O1 F: @9 P  u3 E                schedule.activateIn(this);  N$ P* _' e6 a( C0 p
                return getActivity();# T- ^: M0 e1 ^* e- q
        }7 j$ m) A7 o4 k3 r
& a) \" t, o( n" g
        public static void main(String[] args) {: u8 k9 t' S( V7 w6 D
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
' B, o, c- o; Q- ^                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);! u3 @0 f' h, j) A1 h; \
                swarms.buildObjects();
" Q( [% N7 `% q+ [& q: v                swarms.buildActions();
$ V0 [: L2 j# C) a' E' r                swarms.activateIn(null).run();
* D( A1 w6 N% o" v! d        }
0 W$ F- q4 R0 Z2 v( \3 `7 ~7 @' Q% |- _- a2 M# k. Q, o! y
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-8-22 11:43 , Processed in 0.020153 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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