设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 5121|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 ; \, b0 w: E  {) P" v
  i6 |, g. y" g" @
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21$ j5 Y/ h- k% X
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.& z! @; G+ a" R/ e# t( e
swarm.SignatureNotFoundException1 y% W" B- _# G# ]/ s9 q
        at swarm.Selector.<init>(Selector.java:76)- r  z) `3 q* G
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
+ a1 f" j: {- s        at ActionGroupDemo.main(ActionGroupDemo.java:67)3 D- ~1 r- ~0 K, X. U
$ J" h' r5 y  D" q6 p
; K  O+ o  g6 ~4 f( n4 _3 I
import swarm.objectbase.SwarmImpl;
8 q1 e, e. K+ V  X, h# x$ timport swarm.objectbase.Swarm;! q( F5 H7 b- B
import swarm.activity.ScheduleImpl;
: d! H! |  W0 q) D0 m! e7 Wimport swarm.activity.Activity;5 K$ E3 @4 J- {: a
import swarm.activity.ActionGroupImpl;
% c9 w8 u8 S& f& \3 Jimport swarm.collections.ListImpl;' _; a2 w9 V" p2 g  W& E; D
import swarm.defobj.Zone; 4 c' }' r6 @! u3 u$ _+ K& d+ ?
import swarm.Globals;/ G5 r6 S! f- ]: Q3 }$ ?
import swarm.Selector;& H' S7 Q; b3 y$ B* k
import swarm.activity.ActionGroup;
9 O1 E  O% V3 ~' Qclass Agent {& J. n8 c0 x# C+ ~
        char id;
( f# k( {( j2 M: B* D+ L+ T) \& k" A' ?
        Agent(char id) {6 K0 u( z7 c. o$ Y+ S. y
                this.id = id;: d$ W( v  |- b6 q3 H2 T  v
        }( V  u+ A" \9 R" I5 _

7 L3 S3 ?% \# ?- K/ v; K6 o2 ~        public void agentStep() {
3 o3 D5 W& i# T                System.out.println(id + ":" + Globals.env.getCurrentTime());
2 @# O9 A9 `, z5 X        }2 _, L1 ]+ o# |+ _" d
}# T  x3 g' W4 D; U7 b. i
& s9 w  w" a# M( `7 ?
public class ActionGroupDemo extends SwarmImpl {9 m$ y/ [) E. e) Z
        ScheduleImpl schedule;( p: o: E! a( V/ U$ D- w, i
        ActionGroupImpl actionGroup;
! Q' e9 i; j& B        ListImpl list;! Q" J+ t/ D) q& c
        char Id = 'a';1 d$ k$ {1 s" R) l  s
' R0 g" L6 i0 S% A% R
        ActionGroupDemo(Zone aZone) {
+ F; [* T, R7 }, W                super(aZone);
8 Z7 E1 R6 d1 @) z# Z: L6 y                list = new ListImpl(aZone);
1 u6 r/ W% D, M                swarmSetp();
0 {7 T( R1 K0 X                actionGroup = new ActionGroupImpl(aZone);2 ^9 _  |' P# [3 F. ~
                schedule = new ScheduleImpl(aZone);
  q; g7 f4 \& ^) _* r' b                try {
, L$ w2 p0 e  I# q' `' a( C                        Selector agentSel = new Selector(Agent.class, "agentStep", false);: z, ^- e: Z/ {: i$ {. @
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
; g# n) O' \+ T5 M1 r                        
. h0 g! {) a- k4 e                        actionGroup.createActionForEach$message(list, agentSel);: z% Y+ D2 P( T9 r
                        actionGroup.createActionTo$message(this, swarmSel);/ D6 b- e9 ?+ g& G& s9 z' n& @
                        schedule.at$createAction(0, actionGroup);
- K# R2 E6 m) r" o/ J" D                        schedule.at$createAction(1, actionGroup);0 r& \4 k! F9 T$ D2 c
                        schedule.at$createAction(2, actionGroup);2 i  l+ f- X5 z  X2 I! E9 B1 ~9 x

! b: z8 F; P$ H                } catch (Exception e) {- T" f' f7 B+ r. z6 U
                        e.printStackTrace(System.err);; ^* T1 B! f1 O3 Q; ?) J
                        //System.out.println(e);
5 l( D! S2 j3 A5 X                        System.exit(1);
% N% Q! E8 J6 @! u9 W8 z& c                }
& O* H" `0 N  f1 I  q  A. I% R8 G6 d
) I: G: i* B! K$ _
        }" ^  b9 V( D5 Q) |

1 i) |6 N% G8 ~4 B" C( p% r        private void swarmSetp() {
( `9 S. Y, B' {/ y8 @                list.addLast(new Agent(Id));4 m) G4 J" E# p/ l/ F
                Id++;0 ~1 ~) ?3 `! W7 d8 k- H
        }0 j  A) d" O3 ]4 }/ @

1 f! J' X0 J0 u7 |, H" h        public Activity activateIn(Swarm context) {
1 o! R  L' W* n                super.activateIn(context);$ d; H8 ?! v: `' k- H
                schedule.activateIn(this);1 y, j, ^; L# Z2 ]4 L8 R
                return getActivity();( Q( o! f% x9 S
        }
" x2 x6 Y* w2 N# n, u
1 D- W. S$ O: ^+ P        public static void main(String[] args) {
7 \0 p5 \2 O4 U, w* i: R; z                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
5 Z. {, B, J  H' g                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
' q( t/ T' C& x                swarms.buildObjects();
7 ~: Q8 Q+ g8 I; d5 H! I) I" B                swarms.buildActions();0 K& c0 f" s: h2 X4 N4 Q
                swarms.activateIn(null).run();
  x- f3 p' F7 D7 l4 r& F  Z, u$ s        }
1 t. u9 B/ L; ^* R: S' F# B! x/ ~2 g' D0 G- b
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-11-25 17:10 , Processed in 0.014143 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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