设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 8330|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
% [9 K8 c9 W' I1 E: l: R: ^! y1 k1 g- y
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
& Z7 u2 C+ {/ \4 ^以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.4 M) f) e, t# d. X8 N+ N
swarm.SignatureNotFoundException, i4 X+ B8 A2 I: i" K6 X9 z
        at swarm.Selector.<init>(Selector.java:76)
+ q* Z1 P2 [# y        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)2 k  n" n' ^  [, J+ }- e. X& T
        at ActionGroupDemo.main(ActionGroupDemo.java:67)4 F- e' `+ @( l5 t* T

  a1 \6 o6 U; M5 `
! E, N/ n. b# E9 Rimport swarm.objectbase.SwarmImpl;: b9 C2 E: I" R& T* e( B
import swarm.objectbase.Swarm;& y8 w2 N% Z$ j- g8 P" U. k( a
import swarm.activity.ScheduleImpl;
( Z8 o  g7 i; m+ x# wimport swarm.activity.Activity;
! l1 K& X# a1 I& }. x( pimport swarm.activity.ActionGroupImpl;
0 X% @  v+ o/ H5 ^; nimport swarm.collections.ListImpl;
4 ?: `9 |! t) Z: L0 limport swarm.defobj.Zone;
' a7 ]1 q$ N1 V$ o$ A- Limport swarm.Globals;7 U, K1 m* Z# _3 B
import swarm.Selector;6 b  e/ t' f4 q9 m; `
import swarm.activity.ActionGroup; 0 \" S% d3 a1 W. d$ q
class Agent {
: |5 Y  K$ Z% D8 c8 {        char id;
" D* o8 a2 A) }6 P1 J: f  k7 Y6 {- L9 C: g! d/ K# E! q
        Agent(char id) {
0 v; i( l" a& L* w$ r                this.id = id;
8 r0 M3 l* [8 \$ A  Z        }
. T  F% u/ g0 Z8 P
/ x! y/ D# p1 U) e) ^* ]        public void agentStep() {# e  E) m# I' E7 D- ]4 S
                System.out.println(id + ":" + Globals.env.getCurrentTime());1 I8 N$ e, ^2 g# m8 X* ~
        }8 E0 t2 u( F6 I0 P% B
}
) O: N& M) E. x0 k" B* K5 W' Z
  w8 b  [! f; _) u" p$ `public class ActionGroupDemo extends SwarmImpl {
$ r0 j( ^, I" L- x& _  |6 d; g        ScheduleImpl schedule;0 a3 l  k0 s- [$ [7 d  a) d
        ActionGroupImpl actionGroup;& v, B2 h! Y2 M, G9 \" I
        ListImpl list;
% J) x+ g- U# h3 o' X        char Id = 'a';
' t" l6 L, e7 p- @+ u% ^3 V) e* m: C. s6 L* Z$ T4 A. d- i" r: {
        ActionGroupDemo(Zone aZone) {9 k  a  h' ~- ~  G1 j, O0 O+ m
                super(aZone);
- ?; L  g0 f7 L( Z/ D                list = new ListImpl(aZone);
- l; r3 K- X# u  A4 J0 P5 P( |: e                swarmSetp();
; _4 G5 s' P& ?4 C( d                actionGroup = new ActionGroupImpl(aZone);
0 ~0 I8 t+ g/ u2 l                schedule = new ScheduleImpl(aZone);- Y3 Q  o/ a* E4 X0 ]
                try {
5 L! g3 E% K) y: ]) X3 R1 k$ e                        Selector agentSel = new Selector(Agent.class, "agentStep", false);! W* |9 Z- G' y: V  e
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行3 J& S. r* Q$ y# }  [3 ~2 Y6 o
                        
7 ~. c& T1 w& x: `; V' ]8 f                        actionGroup.createActionForEach$message(list, agentSel);
/ V" W. Y8 k/ C& W/ Q* e6 r                        actionGroup.createActionTo$message(this, swarmSel);
6 |7 Y' V9 P) n7 l                        schedule.at$createAction(0, actionGroup);& F; u* F; k  C+ v. |
                        schedule.at$createAction(1, actionGroup);
9 V; d6 ?" L5 Y7 `                        schedule.at$createAction(2, actionGroup);4 X! m  H% u) X# [1 g6 F$ v0 I
0 D+ ?) o# l! j  ]3 j; a/ o; i( h
                } catch (Exception e) {
! J8 C- y/ }2 l; }$ C7 O7 X                        e.printStackTrace(System.err);
! {. X5 {" n% u+ ?  O                        //System.out.println(e);
. u/ G5 b. w* j; s8 i5 z, N3 ]                        System.exit(1);
" L2 p0 a6 U! _5 J6 o                }
- p, h( F6 j9 }/ v9 K) F+ M' [5 n1 J* _
) V" o, o) }% G% L  m. S
        }
+ Y" |% p' Q" o
7 M( }2 e7 I$ w3 N        private void swarmSetp() {( I+ D" i& _" R! e4 u( m' Z7 A
                list.addLast(new Agent(Id));# u* t' h" |+ C, P0 N5 w1 k* v
                Id++;8 N$ @' [0 G4 |, S7 t# L8 G& G
        }$ D6 x2 s1 j. K3 T; j' v( V7 i

( H8 ^) e* G. O0 R0 ]* x: K        public Activity activateIn(Swarm context) {
! [; v- v; F# v* {5 }# H- @                super.activateIn(context);
/ `2 ^' {* t- t! ]$ `) w                schedule.activateIn(this);
: E$ c9 Q5 w: e                return getActivity();
$ T" f) V$ d+ B        }
; d% }) d+ b, f
& h) J7 C, s6 ~8 H/ g* D        public static void main(String[] args) {
# @9 p+ Z! E! u# P4 `                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);: W; f# e8 R* u" n/ G! U
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
' o# ~: z5 ~  l& {5 U- D                swarms.buildObjects();
# M2 Q# g$ }% f; |                swarms.buildActions();0 U7 p9 Z: Z( R; c( `- Q
                swarms.activateIn(null).run();
4 L) {) |3 Y$ m& D2 L+ O        }
7 m' x5 I0 K/ F) ]+ f& L1 F" p. B' `* v6 D
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-4-8 10:34 , Processed in 0.016448 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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