设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 13808|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 ' @$ T( Z" b8 n. ^* C
: _, ^; H8 _. B0 d/ {# s) @1 J
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
# v4 j! U* A3 n2 `  z2 v以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.& Q6 J, W4 Z7 N; w
swarm.SignatureNotFoundException. G- ~% M% [* x# W
        at swarm.Selector.<init>(Selector.java:76)
( L6 i  e! B5 Y( b1 |; Y. l9 U. l        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
, t' D1 t1 k3 s3 y) `+ N% h3 m% l        at ActionGroupDemo.main(ActionGroupDemo.java:67)  @" M% H3 g$ G/ \4 d7 j  i

1 V/ t; |$ `1 s7 n6 c& i( @7 c, u, K* Y% s$ A, P+ T7 z
import swarm.objectbase.SwarmImpl;
5 Q6 O5 M9 M# o- a1 x, U( Uimport swarm.objectbase.Swarm;$ }8 B6 N1 J7 ]  B6 W% m, Q# b
import swarm.activity.ScheduleImpl;3 i; t( r* T! ]- P& U
import swarm.activity.Activity;
2 @+ L8 g9 R6 ^5 t: yimport swarm.activity.ActionGroupImpl;
! M9 K' e9 Q7 u4 nimport swarm.collections.ListImpl;
; v: b: G0 R" C& W4 gimport swarm.defobj.Zone; ) }% r: S  b3 r3 d2 n5 A6 B# I
import swarm.Globals;7 r& R2 G3 F. Y4 `7 z
import swarm.Selector;" F4 {2 H- S/ [9 z; B& V
import swarm.activity.ActionGroup; # F. g, |3 Q/ b
class Agent {# h( ~1 I9 ~+ Y
        char id;  P5 f; z$ i' K6 T- L

# o4 X, H5 ]& ^9 Q1 p; ~0 H        Agent(char id) {# x/ ^! t! j+ I$ V2 b7 ~* h
                this.id = id;
$ C3 m* y) h$ ?% z" n5 m$ ]" a7 C: H        }& R0 }+ J  g5 W& p1 ?# `0 ^
3 e+ z. c! f( s6 h/ S% @- S/ t
        public void agentStep() {6 b* c8 B9 E" Q% w
                System.out.println(id + ":" + Globals.env.getCurrentTime());
6 s) w3 ]& \/ n" E3 {$ W        }
7 ?' s' d  @7 t! L  v}
" v4 @6 |0 V$ m0 n4 `  ?0 C/ ^( O& U/ ^' t# V
public class ActionGroupDemo extends SwarmImpl {
# O: x; r2 A( |0 U  g( G        ScheduleImpl schedule;% {6 T1 j0 e6 Y3 S5 c; w5 D
        ActionGroupImpl actionGroup;' {; n5 J2 F0 w3 B( g
        ListImpl list;+ r9 v. C; s3 ~/ G  d
        char Id = 'a';& ~; u" K" \$ {- X6 L

4 O5 M  ?& m+ C+ o1 F" o) \        ActionGroupDemo(Zone aZone) {9 ~$ g' K6 W4 A' a# S
                super(aZone);
$ T5 \7 v/ N7 I/ N* y+ b                list = new ListImpl(aZone);
; D+ v+ _) |1 d$ J' k$ J                swarmSetp();' E/ o% f' g( f+ r- X& U
                actionGroup = new ActionGroupImpl(aZone);
$ B6 [3 K6 f; `8 ?                schedule = new ScheduleImpl(aZone);
0 [. F" Z, y! T                try {
/ m1 J. W+ q  U* b5 o$ Q                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
3 i! \, v% D7 m, u( I" T                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
/ d4 `# D0 E+ x( t                        
7 s; Y& c  k8 i( g6 S* ^  @# u. x                        actionGroup.createActionForEach$message(list, agentSel);' g3 k' Z% J& k0 L- r% i
                        actionGroup.createActionTo$message(this, swarmSel);
+ P2 \2 {# ^  M+ Z2 X' g7 [) @. }                        schedule.at$createAction(0, actionGroup);
" M# Q$ V  z# @$ w: a7 |1 Q7 v- T                        schedule.at$createAction(1, actionGroup);: e& K: v' S2 b4 m
                        schedule.at$createAction(2, actionGroup);* l. I) L' M9 _* I  E0 J
% t: L3 _5 W2 d& K: J; U/ d- N% t- _
                } catch (Exception e) {
/ M% @! g6 {3 d; f                        e.printStackTrace(System.err);& c: a4 h! t2 r1 L7 W
                        //System.out.println(e);, B! ~6 W, N" s$ U6 E9 i
                        System.exit(1);
5 o* Y) E7 [9 J. _                }* H$ |" ~6 f+ q0 m/ {3 G
% J# X7 v# C, H+ C# f  @8 ^
" O2 e2 n/ Z7 Z! ~$ g4 k
        }/ Y8 }/ u6 E4 E
$ q3 y* S: T2 L. J' w+ S: T) D8 o
        private void swarmSetp() {
. r- `8 z9 J; U9 ^2 l! J, {                list.addLast(new Agent(Id));
/ u7 s) y$ B# R* s2 ^# o3 O% B1 q7 [9 a                Id++;
! ~) d# `, b7 B        }
# b6 m+ a: t) S7 W) Q+ `4 U! n; f4 T9 [5 d) h  [4 i
        public Activity activateIn(Swarm context) {! ?+ {# {3 N. i8 A
                super.activateIn(context);
: D( Z1 p: S% G, @( z                schedule.activateIn(this);
& P% y2 v* P6 F                return getActivity();6 M& V  v& D' W: e3 q# Z$ [, N
        }
8 y" Q$ f8 [7 w+ k2 N% K# |1 ?* O, J5 Z- Y9 |
        public static void main(String[] args) {- K( A5 M! I2 _/ k! n$ y/ O4 w
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
6 K1 |3 J- L$ |6 ~( e: v) }; A                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
- S1 L2 ?4 Y2 }- i, y                swarms.buildObjects();
9 z1 M5 w! d5 R* f# v                swarms.buildActions();
5 Y% R9 g& D% R) S6 ^$ E" }" o                swarms.activateIn(null).run();
9 ^8 k8 y: `% t1 d. x( ?* Y        }( |, X3 P" G1 ?3 h
5 B( [% x* w* D* `7 E# F- t
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-9-18 07:36 , Processed in 0.017321 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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