设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 7646|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
: X$ _6 l& y& X/ j. l) N+ j4 ^8 B2 k% x
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
1 C8 j7 u- N: A: h. y- T  S& G以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.( K& e. {- F: y4 S+ e
swarm.SignatureNotFoundException
7 f) I3 |' x3 U8 f2 B- j        at swarm.Selector.<init>(Selector.java:76)
; h- ?& U: W' a4 t( P4 z5 e* E        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)8 U" o1 @: P( D4 h" |+ \
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
) [+ ~5 _  L# D! A- R0 ~7 k- K# P$ d5 P

8 v" j6 [7 g$ O! F/ jimport swarm.objectbase.SwarmImpl;
1 j) d9 z# k# z2 }  _( oimport swarm.objectbase.Swarm;8 R0 e& J+ b  F# G9 H
import swarm.activity.ScheduleImpl;' R' P7 x( d, A/ I
import swarm.activity.Activity;& ^. f3 Q2 X  c" m" j7 p( B( N. b! k
import swarm.activity.ActionGroupImpl;" @# l! z8 J1 E* i  ^  i5 j/ E! e
import swarm.collections.ListImpl;
. d8 M0 D9 [. |4 L  ^import swarm.defobj.Zone;
; v0 f: \. B% @) ^' ^% i9 \5 ]import swarm.Globals;8 l  v: S0 [0 `& v! Z
import swarm.Selector;
5 T% [$ F/ P5 n& B+ ~+ k  Mimport swarm.activity.ActionGroup;
  O  M/ W- f: x( f+ Xclass Agent {
% c! R) h% ~# ?        char id;
; |3 u' ]5 E# \- @8 q
4 }+ i* P( l8 m* L4 u# G0 R        Agent(char id) {: E) R: s. L4 P8 W. i- n
                this.id = id;5 D4 m8 K9 O5 V; Q1 G, q' B
        }
: u/ P+ l, C  c7 C: u( e+ }& }* d3 f- v8 E& S; \. a
        public void agentStep() {
( |: z5 {6 G, m                System.out.println(id + ":" + Globals.env.getCurrentTime());+ ]0 r1 e0 v* [9 b8 R
        }
+ P8 R- g8 V# c$ z}. a7 k' h  o& a# ~
* o8 c) e: L# W, ?1 s
public class ActionGroupDemo extends SwarmImpl {
8 j+ t, B1 q0 o        ScheduleImpl schedule;! B9 l8 }6 z9 M$ d
        ActionGroupImpl actionGroup;; K' R; e/ T8 Q0 Q3 E
        ListImpl list;  [) v$ u- z, s' d0 ]
        char Id = 'a';
: L, k& T# o/ s
' F# x1 m8 j; u, V        ActionGroupDemo(Zone aZone) {" c. ?) j0 H+ ?" @, K
                super(aZone);: q9 ~$ i6 A3 U9 u% J2 L
                list = new ListImpl(aZone);, w( y4 R( z! c3 |
                swarmSetp();1 M+ C; ?1 K5 J8 L! }+ x
                actionGroup = new ActionGroupImpl(aZone);+ O4 n5 e# {2 X: H; a% f1 h; P; o9 o
                schedule = new ScheduleImpl(aZone);
+ w* z, P9 d7 z, G! _                try {
. X4 c5 ]' _( t2 Z* {- J  V( b$ [/ q$ M                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
( `5 G; W6 U5 g0 p$ [                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
  B3 s! C6 v, c" R: D                        
$ u$ r+ v: N8 j& w& K: q                        actionGroup.createActionForEach$message(list, agentSel);
* v( O) s- P+ D3 @# y% B0 v                        actionGroup.createActionTo$message(this, swarmSel);  E; i. l$ H' \* i+ f, E; }# b7 R
                        schedule.at$createAction(0, actionGroup);
' C% U$ G! I" v& b) _1 Z                        schedule.at$createAction(1, actionGroup);3 q& j: u7 R. g  y5 V9 D  c
                        schedule.at$createAction(2, actionGroup);4 ?7 Y; N; R1 h: [6 a
0 H% D1 q, Q' @) b; B& u
                } catch (Exception e) {
  ?5 [. F$ E& I0 Q9 G/ }3 i                        e.printStackTrace(System.err);. h) B1 @7 ]% `2 X7 L
                        //System.out.println(e);
$ g* \. N- ^( b7 w, ~! N: Q                        System.exit(1);2 {' u' x" \% D
                }
, \) \/ Z) A- m0 c5 u$ T: A  z4 r

/ t4 E4 a% T# F8 M        }
1 M# k9 n7 x& w: W* K# H7 `8 [2 ~# C
$ l$ X+ @' o# c/ t        private void swarmSetp() {
$ x3 z1 @; B6 u                list.addLast(new Agent(Id));$ x8 l6 O8 Z. @
                Id++;
) L+ m4 D3 L# V: o1 n1 z( J        }, k1 \. W' e6 o; o$ |: [7 d
- h+ s7 E( T( \+ q
        public Activity activateIn(Swarm context) {
6 [4 W% h6 {- a4 _- H/ E7 s                super.activateIn(context);
7 V6 b) X2 p7 B. G5 \& A                schedule.activateIn(this);
- ]3 w2 X3 M5 w- e                return getActivity();7 A2 V( m5 Y' y* S# C
        }# K; v! J- M( @' M
* N5 U0 e3 M, w3 a; h9 O
        public static void main(String[] args) {1 ~; K8 g0 R2 f6 h$ r
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
1 ~1 {7 M0 ]% t                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
7 l3 b% o/ D7 h# Y                swarms.buildObjects();
2 g5 t0 t& Z( q- @                swarms.buildActions();
8 {" I# Z, e0 S9 h! x: b3 t0 d; M+ q! u                swarms.activateIn(null).run();
  C, ]# F; X7 r% R/ p) N# s        }
- J: V+ }# `" ]4 w
' u3 h- u2 A- Z$ L$ h- l( v}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-3-10 03:46 , Processed in 0.018167 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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