设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 13257|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 ! a) F& Q9 r, H, ?( a4 q1 [" c- E

& m& u+ B, }1 z  G本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
& B* L  G& S' I- U  h: H以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.$ s2 q1 d3 R0 r0 M! ?& I
swarm.SignatureNotFoundException
6 s  y: f: `! X0 Y3 C( C( ]2 U        at swarm.Selector.<init>(Selector.java:76)* _7 O$ q( `5 R0 N/ b1 y
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)6 g: K5 b1 e3 |2 N0 y
        at ActionGroupDemo.main(ActionGroupDemo.java:67). u, g! p$ j6 W
( S( R! V3 E6 V
( D& t$ k9 x% V( g
import swarm.objectbase.SwarmImpl;
0 ?! b/ v1 [' O9 Qimport swarm.objectbase.Swarm;$ G* Y6 K9 N3 r
import swarm.activity.ScheduleImpl;
' `" c: a" Y% C" |+ C: k  {) [import swarm.activity.Activity;0 O7 z6 ^5 U2 i9 `
import swarm.activity.ActionGroupImpl;" J3 Z* d1 L( {. H& a
import swarm.collections.ListImpl;
; V0 G' b7 m$ v' k; B1 `import swarm.defobj.Zone; ! ?+ C/ \- j0 P
import swarm.Globals;
5 W6 q  E/ S/ I3 simport swarm.Selector;
7 ~/ c/ @' i5 |7 \; D) Y# yimport swarm.activity.ActionGroup; ; o' ^( V4 t+ v, q- T0 g( v
class Agent {8 s% V! A# E& n+ n
        char id;$ T2 F8 ^, P: Y8 q( q1 }2 q$ p# ]0 u
. N& v, d2 Z* [5 _# f
        Agent(char id) {
8 Y: E7 H6 C- ?! [/ c                this.id = id;
6 U5 x$ b# f" I' O        }( Z8 t" O: A' ?
0 j) w0 V( L- A1 w% R, A( v
        public void agentStep() {  l' Y7 M4 z3 f- y! U. W) d/ l
                System.out.println(id + ":" + Globals.env.getCurrentTime());5 q& H6 F- y9 G0 W/ b& w6 U! s. z( e
        }& o/ H6 ^8 M( q+ p! |9 Z
}6 t0 C$ E( k5 b/ e
1 p$ L' {' _8 }/ k) @
public class ActionGroupDemo extends SwarmImpl {
8 h" r8 s$ h( W8 D6 _1 g/ l        ScheduleImpl schedule;
; o/ k' _5 I& H4 H2 J5 q2 V        ActionGroupImpl actionGroup;
' M+ I& n2 l! Z4 A, _6 u        ListImpl list;
9 N; E0 e; D6 ~0 U        char Id = 'a';7 F& Y9 U3 J& o7 x2 R/ [/ V

# R/ U# S6 {4 {- Q0 m        ActionGroupDemo(Zone aZone) {
5 g" [* J. x3 g+ E                super(aZone);8 ^) g; V0 q) Y, P  O
                list = new ListImpl(aZone);6 G" i- R2 |8 v" A, L
                swarmSetp();% Q- q5 [9 E( v$ M4 {, \9 G
                actionGroup = new ActionGroupImpl(aZone);
; i5 J2 W$ _' Q2 E6 Z2 n                schedule = new ScheduleImpl(aZone);8 r; M; s4 l1 I; \. a$ Y: j
                try {' n  U3 ?6 _3 m) b3 G6 s- G6 G
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);8 \% x8 x$ }, m
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行- A8 h. u5 j% L" P
                        
/ R( B. ]% X/ Q# ~0 B4 `, X                        actionGroup.createActionForEach$message(list, agentSel);: D* M( D0 \( h9 \% ^6 \0 }* \5 l
                        actionGroup.createActionTo$message(this, swarmSel);) b0 m  g$ @) L5 s
                        schedule.at$createAction(0, actionGroup);2 [, `4 {3 `' W; T
                        schedule.at$createAction(1, actionGroup);/ n/ h+ p0 M% V' b$ H& N
                        schedule.at$createAction(2, actionGroup);
3 J& w$ @8 D5 D9 t: P( H/ _9 K' e, f; ~
                } catch (Exception e) {
) _4 k; s+ G* ?                        e.printStackTrace(System.err);2 q  D7 l* {% c. n$ l+ x
                        //System.out.println(e);
& B3 ]$ d* H- v0 V                        System.exit(1);( H6 `6 t3 H0 v5 d" T: t! u
                }1 s' o% u5 p0 G+ w. ^) w8 K( S' \
$ V' v- }, Q6 A( F/ j+ Q
; y! A! B( V5 e7 E+ V4 F
        }
/ h% i" C# J( k8 j4 r
. j7 j% |+ Q& f& t- p& h        private void swarmSetp() {
" L# _; C1 K8 ^( s                list.addLast(new Agent(Id));  Y$ V9 G1 J+ F
                Id++;
% D6 Z  M0 \% J0 K* Y5 z9 o6 @2 ^        }& t- o$ R1 n  g3 b: Y1 `

/ E! f- [1 D" O0 N        public Activity activateIn(Swarm context) {
0 M8 D9 B5 I) w/ |; w' E5 i                super.activateIn(context);
* P2 l/ C, a3 {/ |* N9 U                schedule.activateIn(this);+ t" {( [3 Q9 O6 n
                return getActivity();" H5 H* i1 E, U. i  |) ]; _+ T
        }6 e- A8 f/ A* n- M

# S- @& m9 }7 y        public static void main(String[] args) {
' T$ e  n" Z) w- l7 s7 P                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);: e* b- z2 s1 i  I- P, Y( S
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);% v: r  ]# @# m' h: k
                swarms.buildObjects();
# |& f' {+ M1 r# n2 _' Y                swarms.buildActions();
1 u" p& q/ l" n7 J# S8 M/ h                swarms.activateIn(null).run();/ H! G# \& J  z; B# y6 ]) s7 ?7 _
        }
3 m& t& D' c' O; M! W; W9 z1 Q+ l% ^
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-9-2 01:35 , Processed in 0.014087 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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