设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 6239|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 * Y9 C0 B" d) v: \
( v# X' `& [. i7 d
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
) A6 h1 R/ j3 _" F2 v4 E以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.$ x5 h+ b; G& r4 U
swarm.SignatureNotFoundException! V7 q4 Q' R+ H- \, g  l
        at swarm.Selector.<init>(Selector.java:76)
1 ~% Y9 `7 N  K/ @$ C        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)6 R$ x. t9 ?! b' ^6 @
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
! T% M/ f, N1 e8 C; I1 p- L; @1 y+ A' Q: A3 S  g

7 A1 R4 H  H( J- G6 ?- `# U% Aimport swarm.objectbase.SwarmImpl;3 M# M7 x% \0 B( k
import swarm.objectbase.Swarm;
4 g7 j' W' R7 P  H% pimport swarm.activity.ScheduleImpl;
2 R9 f9 ?/ H2 A: h( U8 gimport swarm.activity.Activity;
) {. h0 [7 e1 e9 i/ t% pimport swarm.activity.ActionGroupImpl;% n3 P* ^% g+ m  `; y- _& q. s
import swarm.collections.ListImpl;
/ K! y* j4 _6 \import swarm.defobj.Zone;
8 }4 @  z/ ?' S$ n# B  Rimport swarm.Globals;9 W$ C# h' T4 i0 v7 o5 F! c
import swarm.Selector;
2 v, R4 J% |# }) r: o4 P5 A# y  cimport swarm.activity.ActionGroup; - y! O# K/ O$ `1 ^6 D
class Agent {
& ^5 u- ^; Q5 X        char id;. \- h+ t# L+ h! w6 I
- o. L/ o; c8 D/ F
        Agent(char id) {
& D4 N( Y* s8 c/ n, s                this.id = id;% s$ K0 M' m9 U5 T7 D7 s9 w" q
        }" C" m  G9 F& u+ l) S
! S3 s! m7 m- J; B1 G
        public void agentStep() {
3 \9 E& x; y( v' h                System.out.println(id + ":" + Globals.env.getCurrentTime());0 B3 n- U  Q7 _- C$ Q/ r# z2 L" w% I
        }
0 r" q  g  I" ~7 N}! D$ a) T& ^, h
3 d8 ~' F4 W; h4 g; q/ c
public class ActionGroupDemo extends SwarmImpl {
# a/ f0 z; a' `- P7 G% x' M        ScheduleImpl schedule;
( Q. A% W% D6 m) A$ @        ActionGroupImpl actionGroup;
, J9 W8 b! o9 t4 a, I0 J; n        ListImpl list;4 T, \& i/ N2 `- a
        char Id = 'a';
5 ~4 n9 Q# b$ n- f' D  D- a4 s! P8 x( F/ [/ y/ J
        ActionGroupDemo(Zone aZone) {
" u; o! [/ L. p; ~7 J9 J0 C3 w8 J2 D                super(aZone);, O9 k7 }) n( R5 N  ]
                list = new ListImpl(aZone);( S9 P/ q9 d3 ?' v' w- i9 |6 t" D( k
                swarmSetp();/ k# }& S* U/ R
                actionGroup = new ActionGroupImpl(aZone);: `  p# W0 z! X$ R
                schedule = new ScheduleImpl(aZone);
6 [3 O: y' C5 @                try {
2 {* S( R7 s9 e0 E9 M                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
5 s1 [. r" H5 z7 Q+ u' t                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
. T7 D$ Z- s3 N                        + D$ ]/ ^1 O6 J
                        actionGroup.createActionForEach$message(list, agentSel);
5 v3 E- @1 X( O' _                        actionGroup.createActionTo$message(this, swarmSel);
0 ^. \. u% C. w% b                        schedule.at$createAction(0, actionGroup);
" {7 B, b; B  H4 @- w                        schedule.at$createAction(1, actionGroup);
; B  u: F# U3 K; S: J& {                        schedule.at$createAction(2, actionGroup);
8 V2 {  D; N& X9 j$ F, E
# F2 ]& ]# W! k) }$ \                } catch (Exception e) {. c* C% ^5 N1 I8 q" j1 U% J5 \( X' L9 M) L
                        e.printStackTrace(System.err);( E7 d. \) B1 ^- r. e# Q' b5 g. q& v
                        //System.out.println(e);
, x' E; ]4 f: u' j" |, v+ ]* K& r                        System.exit(1);, S' j9 S% B) w4 u  W8 t; I8 v
                }0 ]# ^9 U1 V0 x! V- T1 u# J2 |" n
# [3 _: j& @6 K! f

0 _) b& F$ t# S$ S, f        }8 P2 C# y7 p; D
% d; S$ `2 h9 G0 W7 D, c( O
        private void swarmSetp() {
+ q2 l+ h4 z: `& W9 K, E                list.addLast(new Agent(Id));
; U& ?% z* _8 ^* g$ N( a0 I) B                Id++;8 y* o8 W4 O: d$ w7 n$ V% _& p
        }
( z$ K  m6 w! m5 w2 N: _
2 g9 h/ E& p; z. Z7 B: t        public Activity activateIn(Swarm context) {, I+ g  |9 `- V! v
                super.activateIn(context);
& V. H6 k' J3 l4 E                schedule.activateIn(this);9 `1 @; o+ d$ E6 j
                return getActivity();
9 r4 K; m- u/ g; J: o        }
  S" X4 Z% R% s" Y' C" x3 |! Z; [# y. D1 m% r
        public static void main(String[] args) {/ ~; s: I( c' S% I# J
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
9 F# A' M2 ~2 k1 |                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
  z: I( S/ S  v$ H6 R* u& }                swarms.buildObjects();
, C/ R# g/ k! V4 F6 F                swarms.buildActions();/ [1 ?( X. @8 C" B. [7 ~! d  M2 w3 G
                swarms.activateIn(null).run();* }8 j7 ?5 |7 y9 s" C  M
        }
) x4 `; F9 o; m: U$ L  ^5 m: z* @& J% Q7 ]8 ?6 y
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-1-22 10:18 , Processed in 0.023188 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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