设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 5038|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
; M  g* M  `& z5 N' W0 w: j, ^' P6 v# X
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
; E; B0 L8 n0 x" v, t+ ?  q以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
% r5 X( A- d; X  l% Kswarm.SignatureNotFoundException
; a2 g- A' s2 c3 W& @        at swarm.Selector.<init>(Selector.java:76)
; E0 T9 u6 x  o; b6 d& D        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
# J# x' {( n& d3 w/ v        at ActionGroupDemo.main(ActionGroupDemo.java:67)
5 u7 C& w: i, p
" P3 ~8 ]; O) H. H' j0 @+ Z, j
6 ~2 R, K3 P' s" d* X5 himport swarm.objectbase.SwarmImpl;
4 D: V+ s% W" ?import swarm.objectbase.Swarm;$ V+ K6 r$ W7 i6 m, [1 X4 O
import swarm.activity.ScheduleImpl;( m& ]' O/ e6 q* |" n
import swarm.activity.Activity;9 h& x) g6 c! E( ~; {
import swarm.activity.ActionGroupImpl;
& _1 F0 [" G) X, Dimport swarm.collections.ListImpl;
9 b$ `1 x" A" ]& ximport swarm.defobj.Zone; 4 L% h+ u% E0 L2 ]5 \
import swarm.Globals;, ?! W- H: f% U  @/ l
import swarm.Selector;& G; x8 s% u0 s! r# O) Z2 M: ?
import swarm.activity.ActionGroup;
* z: H+ M0 c6 \1 Z& _! |9 Sclass Agent {
& u2 Q& Y$ f( C1 p2 F% z2 ~        char id;9 X4 {9 I7 z( L. D9 e  x2 }
8 ^7 O4 K! ?' ^8 H, O8 ^' T
        Agent(char id) {$ z# o! `1 `# ~" D  E0 a0 e: Z3 B
                this.id = id;! R8 M) r6 o3 `$ r3 M9 v8 V2 w" q7 K
        }  b+ F1 X3 a% C8 y0 v

6 B2 z! E7 [! u: w: y: A9 ]' {        public void agentStep() {% M: L3 q% ]( o# I; U4 u
                System.out.println(id + ":" + Globals.env.getCurrentTime());
: Z* g  e9 `7 c* Z! u' i1 d        }
5 G( }4 ?+ Y/ n* V$ z# O}& t& f* t% O' R. D7 b4 d8 {5 K) F
* ?2 S1 G/ c$ l. l8 P
public class ActionGroupDemo extends SwarmImpl {
. f6 D' J: h4 t# g        ScheduleImpl schedule;
. Y4 S: o  v( I6 i8 j# w4 N        ActionGroupImpl actionGroup;
# M6 ~1 Z9 Y6 z0 c        ListImpl list;3 ?% v  G) }. n3 z' Y# V" v
        char Id = 'a';. [. j8 X, ^  q0 Z5 C, X

8 h* V' Z. u7 u3 e) x        ActionGroupDemo(Zone aZone) {
1 K) w3 A+ I" L                super(aZone);+ l$ ]; l) G; y5 w# X3 U
                list = new ListImpl(aZone);
, ~, P& ]* A% f& f: s                swarmSetp();
# I' M; J# X/ d3 k6 H                actionGroup = new ActionGroupImpl(aZone);
% L% i$ T4 k, p* O                schedule = new ScheduleImpl(aZone);
3 G5 ~; \0 T- w' D9 @, X                try {
2 V$ l% S1 p4 a% H' B! O4 T9 o3 V                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
$ J0 G/ h1 O" J5 D, S; i                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行5 Y# l$ D* k& B8 i
                        " ^4 Y8 I6 D0 E# Z6 Z
                        actionGroup.createActionForEach$message(list, agentSel);( y! F# Z, A* w8 W8 p
                        actionGroup.createActionTo$message(this, swarmSel);
0 X7 E8 c8 S) G. n: E) _5 M. J2 s                        schedule.at$createAction(0, actionGroup);# F9 X) U0 V+ C
                        schedule.at$createAction(1, actionGroup);
; H/ @; w4 S: v                        schedule.at$createAction(2, actionGroup);  N( H$ N! |' ?& ?0 f
% V6 A5 k5 N# w$ l( l. O
                } catch (Exception e) {
0 J( _1 ]' m4 O3 }6 s) b! c; f                        e.printStackTrace(System.err);8 }! r# J7 y) Y2 w$ I
                        //System.out.println(e);
: J) ^  n6 j  [3 o                        System.exit(1);: ^7 c- q- ]; J3 S1 B& l, R/ r
                }3 V8 b/ B* Z0 S/ {& b. T

' G  Z  G  V; j* m. G9 B8 j; D! _8 J9 G; j2 S# ^- A
        }1 K" ^, T& L: r
) v3 K% R+ \2 b. }; t4 y1 @
        private void swarmSetp() {/ G& l2 @+ z) |9 q: q4 I3 ^* h% ?; Q
                list.addLast(new Agent(Id));2 F9 G) \  ~% p( Q+ G% @
                Id++;
/ W. Q: h2 T* L8 z8 L        }3 U/ S9 Y1 G( Z( u
' O" q  l" r9 D9 D
        public Activity activateIn(Swarm context) {3 m: \% m$ E1 v6 N  u; ?4 K& I
                super.activateIn(context);% Y: t$ K' a) ~1 [9 r8 ?5 ?
                schedule.activateIn(this);
" ~5 c( Y7 O$ u                return getActivity();& \. q; j: W3 L2 A
        }2 F* A& H3 R6 g- }( ^7 p2 c

# S' x2 Z! p3 _7 r        public static void main(String[] args) {
$ ~& [% D7 H0 |4 n8 M7 s                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);" V" K* Y9 {6 @% I/ S
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
' \( z  r  W7 q0 K" J! D                swarms.buildObjects();4 _, }/ ]6 l1 Q9 r( Y
                swarms.buildActions();
5 q) H3 n- D, [$ s4 j                swarms.activateIn(null).run();6 f' D, G5 ?% q/ j2 F# l
        }
+ T7 B! b0 l# w* y# R; e+ u" G2 u. ]2 S6 ~
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-11-22 18:09 , Processed in 0.022609 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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