设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 8402|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 . U" U" G, ]7 F

, M* |( X$ r5 X, ^本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
7 O2 D( V$ |9 b5 F以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
. |5 z4 O5 ?% i3 b; z# |swarm.SignatureNotFoundException
9 B: s% J6 D! i        at swarm.Selector.<init>(Selector.java:76); Q0 b% g; T( v7 K9 U  `: B
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
+ O3 A: {2 i8 I( y" @/ M! B3 L        at ActionGroupDemo.main(ActionGroupDemo.java:67)1 I% K( k; H$ [. g2 t+ X: C
" {5 B5 M, S$ g7 c7 R( g3 x
2 I; x9 o1 |! l: r- [
import swarm.objectbase.SwarmImpl;
% F1 e( P2 y! Timport swarm.objectbase.Swarm;
* ]- r# d. L& U5 v3 g: Dimport swarm.activity.ScheduleImpl;8 e& s: T4 A/ t/ \
import swarm.activity.Activity;- b# G8 o5 V4 U) B% i& b- u
import swarm.activity.ActionGroupImpl;+ p' A5 u0 K; S9 }, E
import swarm.collections.ListImpl;8 L( m' u' C% D2 q
import swarm.defobj.Zone; + \- s0 _2 d9 q* U+ i7 @
import swarm.Globals;
+ m4 }' R3 U  t6 S' ~- Q: yimport swarm.Selector;
5 }! D1 L9 r5 P1 Y  {3 Mimport swarm.activity.ActionGroup; $ c1 n, Y& I( e% }0 I9 K4 G
class Agent {. i# Q7 }5 n6 V# M* P, R2 v  R2 e
        char id;
8 v9 b9 A' h: N  X5 ~% ^" I) e" K! n: C9 d/ O: H
        Agent(char id) {
5 d- Z, ]) t, R7 W                this.id = id;
0 K( F6 o) o# `  V        }* G; [6 I/ O' t0 K% |: b# C% p' l
3 y1 ]% D& y4 X/ v+ }
        public void agentStep() {6 H+ B! Q5 J, ~) X) s: u
                System.out.println(id + ":" + Globals.env.getCurrentTime());
, b5 r+ q! \* O" y9 }, `        }% h1 p4 J! u9 R! n# U
}# J. t) Y* ~' h& X: k6 v2 g

# a" i1 }* K, B. D( B/ R& Z- R% f9 Z7 Ypublic class ActionGroupDemo extends SwarmImpl {
1 _3 B: v1 u1 R$ o- M7 ^; v5 n' |        ScheduleImpl schedule;" i3 A4 M1 {& A$ ^
        ActionGroupImpl actionGroup;
6 [9 w; z. p; y' g1 B* F4 U        ListImpl list;: [  d, l& S4 c; T; |0 X% g7 Z% i
        char Id = 'a';6 g$ \5 B, L. m/ y4 ]
1 R  x& c) z! ]. p
        ActionGroupDemo(Zone aZone) {6 p$ A8 @8 N# n" R, n% ~+ p
                super(aZone);
6 q, q/ x- ~0 o, F) n                list = new ListImpl(aZone);
% g. S( j5 K' V3 ^; c                swarmSetp();2 p5 o, y& Z5 r3 h, K" F
                actionGroup = new ActionGroupImpl(aZone);- R! P: [  q6 g, ]9 }) o' o2 O- n
                schedule = new ScheduleImpl(aZone);
9 k4 N3 R$ C. k                try {! y6 R: S* q0 ?$ v. T+ \
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);8 A; N' w- e8 C& c. X: K' r( ?- L
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行6 X7 V  m( L% ~- l" h/ s
                        9 K' \# `; l' U+ [& e
                        actionGroup.createActionForEach$message(list, agentSel);
* @+ D$ H' u) q                        actionGroup.createActionTo$message(this, swarmSel);
2 ^# q. a5 X3 @: \1 o4 p                        schedule.at$createAction(0, actionGroup);+ K- K, C+ U. f- `* c- W3 l
                        schedule.at$createAction(1, actionGroup);
! s" O6 \  v$ N" I9 d                        schedule.at$createAction(2, actionGroup);
& K5 G/ r2 v: z" ?
3 J- _3 J( D) x& W* I8 H$ c* q% L, E                } catch (Exception e) {4 A( P. ^& Z+ Q. c7 f; U
                        e.printStackTrace(System.err);. B4 j, i1 q; V3 }  |6 [: p$ ?
                        //System.out.println(e);! K# `0 P3 [" B% S6 N
                        System.exit(1);8 c: ?$ }% z! e: d
                }# a1 }2 X$ p: q# v
; ~1 \1 Z1 ~+ s, Q5 w2 f, z5 i
2 P! v3 K4 z9 {( A4 O+ `
        }
4 S+ c& Z7 {# g3 ]1 a
8 I3 d/ a+ C# m5 m$ u' e        private void swarmSetp() {
1 Y1 U+ L9 t4 ^                list.addLast(new Agent(Id));
# X( T' W8 ]: I; ^! {# i                Id++;
/ Z9 w% c) I6 r/ v+ {" _+ G& A        }. {( a4 C( x' ?& f/ g0 e/ Q
5 n: }3 ^2 d6 S+ v* Z
        public Activity activateIn(Swarm context) {  W2 H7 t$ n2 b$ \6 A# `' z- `
                super.activateIn(context);
# o% n1 N3 x  g! m/ ^' v                schedule.activateIn(this);, b8 t. X4 i, }# ~
                return getActivity();. l& m2 N( F6 ^) n5 Y
        }
$ m* T2 L/ S9 J- I5 N
1 s. O5 _( n! Y/ e4 x2 ~        public static void main(String[] args) {
8 `* h  g: M# _8 f' h; N1 n                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
) ~2 {) N# h0 W1 D+ `                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
5 i! w* f6 I1 i  z6 p& ~                swarms.buildObjects();! V! s" N$ a! x. g, U6 I1 W
                swarms.buildActions();
9 v* M5 @: W3 D" g7 y7 X, X; F                swarms.activateIn(null).run();
. M6 y' \3 O2 }. p        }& d9 ^* y" g: `$ r. t% t' A/ p" d

9 \  y' m6 o% C6 C# ?) y* L% A}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-4-11 01:36 , Processed in 0.021304 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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