设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 8185|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
, G3 J' i0 M) Q- G9 t. H# d' i1 N) F" {( \+ b1 z- y* F
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
8 l; \5 r, P3 L) Y# j! l. a, E7 t以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.& a/ f! q6 U: ?! E
swarm.SignatureNotFoundException. N4 @7 ^5 V) j9 V" }
        at swarm.Selector.<init>(Selector.java:76)1 ]3 z8 s+ [: R; N
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
" F, x, _  H4 k, q3 [        at ActionGroupDemo.main(ActionGroupDemo.java:67)
( ]6 P" |1 d- l7 z3 x4 S# b% `
4 L  ^( w8 V( s4 g4 G5 E2 n/ f0 J
( X8 D+ X/ n0 m" W. Q* Limport swarm.objectbase.SwarmImpl;: e6 m4 X. S0 ^( ^7 L
import swarm.objectbase.Swarm;
' ?0 s7 Q/ z. M8 Jimport swarm.activity.ScheduleImpl;7 b! a0 m. `# |9 N6 q- p
import swarm.activity.Activity;& y0 q% U1 G2 B; E: C
import swarm.activity.ActionGroupImpl;  s$ J  a) c% G
import swarm.collections.ListImpl;6 i' l! C. N5 d1 V4 }# j
import swarm.defobj.Zone; 0 f8 Y" Q* g8 X" M; b( \; l% ^
import swarm.Globals;
* T( ~6 y$ u. ^; U! n) A0 c4 ~" himport swarm.Selector;
3 x7 j9 o3 x4 H$ w1 O4 wimport swarm.activity.ActionGroup; : J8 E1 Y7 ^: Z/ A2 l1 c
class Agent {
0 i% ]5 q* }; t& V; z3 d6 d, v        char id;6 L! w5 m, X* @5 ], n

. ]1 K$ h( u/ ?3 l) V0 K        Agent(char id) {$ p  a- J4 ?" w
                this.id = id;
6 c' Z4 f* A) h) Y* Q        }8 ~+ e4 O5 f( d0 i: G) z

4 z% T2 B4 `0 q( H8 m7 Y% T        public void agentStep() {
: i- Z" @/ X) C                System.out.println(id + ":" + Globals.env.getCurrentTime());* g9 y5 D0 {# B  A9 t$ T, {
        }3 T0 \! v0 l% \6 |
}! _) p8 N/ }1 }9 Y7 f6 _
. q2 u4 B$ T) O6 {9 v6 O9 H% B$ n4 d
public class ActionGroupDemo extends SwarmImpl {
+ s' _- b. P9 T* }1 H) b) G        ScheduleImpl schedule;
  i5 o7 Z; w2 Q& u        ActionGroupImpl actionGroup;
( `, E) w1 Y; Y# m2 Z        ListImpl list;
' n, ]0 c% T, s, i        char Id = 'a';
" q2 ~8 Q& T$ S! l8 C7 z9 b6 |
5 e9 A" m% f+ `( B0 f+ \* y        ActionGroupDemo(Zone aZone) {- c, Z' _$ F0 b! _3 @8 _/ U# q
                super(aZone);& @9 |6 c2 Q3 t6 _
                list = new ListImpl(aZone);
9 @: ^' ?, d) f) t( b                swarmSetp();6 {$ j/ S: L- w! X
                actionGroup = new ActionGroupImpl(aZone);  H" r* e4 m+ K( u
                schedule = new ScheduleImpl(aZone);1 n* L, z( x2 X1 R) Q% \
                try {- X: Y$ ]9 J0 Q: P( p
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);4 g& J0 P6 |* y# f' O( F
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行% w7 Y0 Z1 [0 c! O0 ~) u- J. u; `
                        
5 e% K7 j. p# q  g3 L# y                        actionGroup.createActionForEach$message(list, agentSel);, j# E" e( n- Q, e! E
                        actionGroup.createActionTo$message(this, swarmSel);7 R+ |% [6 y+ W! H
                        schedule.at$createAction(0, actionGroup);
$ L1 F! `1 L" G2 g) y/ h5 K8 R+ @" f                        schedule.at$createAction(1, actionGroup);2 X! g! L" I3 x+ G1 w6 M! I
                        schedule.at$createAction(2, actionGroup);# A8 ?4 z3 W8 }

, z5 h8 E( i. T7 g& j: D                } catch (Exception e) {5 \" \* D# i0 F; b. [
                        e.printStackTrace(System.err);
! b! d# t7 }. Q  A                        //System.out.println(e);
1 ]5 F1 g* o' O8 z  N0 c                        System.exit(1);2 J+ a% u& J7 Y, c. u6 b! D; ^
                }
; x( q9 |, i" Q2 H! e3 x, q' b: Y* c- D8 C! R% n/ s* F* Q% R) W

0 E- I$ G4 Q% ?; U        }
9 y2 `3 U5 H' a8 i% ~1 X
. q) I. G# j6 z# s1 j: f        private void swarmSetp() {
" o! [' f" ^" ~9 W( P4 z, F4 @                list.addLast(new Agent(Id));, S: X; n. U: A, K+ c* B
                Id++;
5 ]& u) A; }8 I( ~        }
8 i$ l8 ?: M6 G' ?0 C. j4 H- k) M& A4 {* S' l
        public Activity activateIn(Swarm context) {
  H) l* i) b1 c+ ^( f7 ]$ q, ?                super.activateIn(context);
1 o& ~& I, D! E) N: }; ^/ q                schedule.activateIn(this);
" b% O7 @) J7 h1 u+ I7 V, o/ v. W  K                return getActivity();% O8 G" a; V8 O$ T7 |
        }
# h* O6 n- G. U# Y
9 @: l# S* B! @; }& i4 \        public static void main(String[] args) {/ C6 Z! ^& t( r/ z
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
7 L9 O) E1 P% R/ B                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
, A" {4 t2 z6 I6 p8 H/ v3 F6 m                swarms.buildObjects();7 ]& e# z& v! |; I8 l5 y
                swarms.buildActions();
  t5 }: ^, a2 U6 E                swarms.activateIn(null).run();* Z( r4 i6 Y: J, u" z# V( E
        }
5 X* B( i3 R, i4 v) I
6 M- c; t; p5 l+ X( c% z1 w& [* `}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-4-2 07:15 , Processed in 0.018243 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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